我使用的是Django-CMS(v3.4.6),Django(v1.11)和Python(v2.7.x)。
我有一个名为get_foo
的自定义模板标签过滤器,该过滤器接受my_obj
,进行一些处理,然后返回一个已知具有属性bar
的实例,但是当我尝试执行以下操作时,出现TemplateSyntaxError: Could not parse some characters: my_obj|get_foo|.bar
错误:{% my_obj|get_foo.bar %}
我发现的唯一解决方法是创建另一个过滤器,该过滤器返回bar
,因此模板中的行如下所示:{% my_obj|get_foo|get_bar %}
。但我想确定:不创建另一个过滤器就没有办法做到这一点吗?
答案 0 :(得分:1)
您可以使用with
标签:
{% with my_obj|get_foo as my_foo %}
{{ my_foo.bar }}
{% endwith %}