我试图将模板传递给切割过滤器,类似这样
{{ myVariable|cut:"something + templateVariable" }}
我试过了:
{{ myVariable|cut:"something"|add:templateVariable }}
和
{{ myVariable|cut:"something {{ templateVariable }}" }}
但这些都行不通.
这可能吗?
解决方法
它应该使用
with tag的临时变量:
{% with myFilter="something"|add:templateVariable %} {{ myVariable|cut:myFilter }} {% endwith %}
或者在Django 1.2及更早版本中:
{% with "something"|add:templateVariable as myFilter %} {{ myVariable|cut:myFilter }} {% endwith %}
添加不支持字符串和int的连接,但您可以轻松地创建一个转换为字符串的template filter,例如:
from django import template register = template.Library() @register.filter def to_unicode(mixed): return unicode(mixed)
允许这样的模板标记表达式some_int | to_unicode | add:’foo’.