我有10个html文件,名称为1.html,2.html ..etc我想要的是根据一个变量,某个文件应该包含在模板中。
例如:
{% if foo.paid %}
{% include "foo/customization/{{ foo.id }}.html" %}
{% endif %}
这是可能的吗?因为在includes标签生效之前,foo.id不会被翻译。因此,它会给出一个错误。如何以不同的方式处理这个问题?我应该为此创建一个自定义模板标签吗?
发布于 2012-10-01 16:40:58
你可以用add filter和with statement做到这一点。
{% if foo.paid %}
{% with template_name=foo.id|stringformat:"s"|add:".html" %}
{% include "foo/customization/"|add:template_name %}
{% endwith %}
{% endif %}
首先构建一个template_name
,它由字符串格式的foo.id
与.html
连接而成。然后将其传递给include
标记,并将其与模板目录的路径连接起来。
https://stackoverflow.com/questions/12669765
复制相似问题