如何创建带有两个参数的Django模板标记?

如何创建带有两个参数的Django模板标记?,django,django-template-filters,Django,Django Template Filters,我知道可以在Django模板中创建模板过滤器,例如 {{ "abcdef"|makeUppercase }} 可以在Django中创建接受两个参数的模板过滤器吗?假设我想创建一个模板过滤器,找到n到m的对数。我该怎么做 谢谢。那不是模板标签,那是模板过滤器。是的,您可以接受另一个参数: {{ foo|my_filter:"bar" }} 此筛选器的参数是foo和“bar”的值。请注意,您只能发送两个参数:如果需要更多参数,则必须在第二个参数中传递它们,并在模板中解析它们 如果您只需要一个独立

我知道可以在Django模板中创建模板过滤器,例如

{{ "abcdef"|makeUppercase }}
可以在Django中创建接受两个参数的模板过滤器吗?假设我想创建一个模板过滤器,找到n到m的对数。我该怎么做


谢谢。

那不是模板标签,那是模板过滤器。是的,您可以接受另一个参数:

{{ foo|my_filter:"bar" }}
此筛选器的参数是foo和“bar”的值。请注意,您只能发送两个参数:如果需要更多参数,则必须在第二个参数中传递它们,并在模板中解析它们

如果您只需要一个独立的模板标记,那么可以使用
@simpletag
装饰器编写一个包含任意多个参数的模板标记。这些由普通标记语法调用:

{% my_tag foo bar baz %}