我使用Django 1.4 / python 2.7.9(因为我需要,我知道1.4现在已经很老了)而且我用django / python非常绿。在我的模板文件中,我似乎无法在for循环中使用任何酷条件标记,如ifchanged或ifequal。
例如:
{% for asample in allsamples %}
{% ifchanged asample.brand %}
<h2>{{ asample.brand }}</h2>
{% endifchanged %}
{% endfor %}
这会引发错误&#34;遇到未知标记&#39; ifchanged&#39;。 Jinja正在寻找以下标签:&#39; endfor&#39;或者&#39;否则&#39;。需要关闭的最里面的块是&#39;对于&#39;。&#34;
我也试过过ifequals - 同样的错误。有什么东西阻止我在for循环中使用其他标签吗?
答案 0 :(得分:0)
如果您询问jinja2
解决方案,可以使用if/else
和set
来解决问题:
{% for asample in allsamples %}
{% if asample.brand != last_brand %}
<h2>{{ asample.brand }}</h2>
{% set last_brand = asample.brand %}
{% endif %}
{% endfor %}