Python Django模板将模板变量传递到剪切过滤器
我试图将模板传递到剪切过滤器中,类似这样Python Django模板将模板变量传递到剪切过滤器,python,django,django-templates,Python,Django,Django Templates,我试图将模板传递到剪切过滤器中,类似这样 {{ myVariable|cut:"something + templateVariable" }} 我试过: {{ myVariable|cut:"something"|add:templateVariable }} 及 但这些都不起作用 可以这样做吗?它应该使用以下命令处理临时变量: 或在Django 1.2及更高版本中: {% with "something"|add:templateVariable as myFilter %} {
{{ myVariable|cut:"something + templateVariable" }}
我试过:
{{ myVariable|cut:"something"|add:templateVariable }}
及
但这些都不起作用
可以这样做吗?它应该使用以下命令处理临时变量: 或在Django 1.2及更高版本中:
{% with "something"|add:templateVariable as myFilter %}
{{ myVariable|cut:myFilter }}
{% endwith %}
Add不支持字符串和int的串联,但您可以轻松创建转换为字符串的字符串,例如:
from django import template
register = template.Library()
@register.filter
def to_unicode(mixed):
return unicode(mixed)
将允许这样的模板标记表达式
some|int | to|u unicode | add:'foo'
我发现它不起作用,因为您不能使用add
过滤器将字符串与整数变量连接起来。我只是创建了一个客户模板标签来处理这个问题,并使用您编写的代码使事情变得更简单
{% with "something"|add:templateVariable as myFilter %}
{{ myVariable|cut:myFilter }}
{% endwith %}
from django import template
register = template.Library()
@register.filter
def to_unicode(mixed):
return unicode(mixed)