ifchanged 模板标签
实例
循环浏览列表,但仅当值自上次迭代以来已更改时才显示该值:
<ul>
{% for x in mylist %}
{% ifchanged %}
<li>{{ x }}</li>
{% endifchanged %}
{% endfor %}
</ul>
定义与用法
ifchanged
标签让您可以检查循环中的值,并在值自上次迭代以来发生更改时输出代码。
如果迭代对象在每次迭代中有许多值,则可以指定要检查的值,并且仅当该值自上次迭代以来发生了更改时,才会显示代码块:
实例
循环浏览 members 对象,检查 brand
属性是否已更改:
{% for x in cars %}
{% ifchanged x.brand %}
<h1>{{ x.brand }}:</h1>
{% endifchanged %}
<p>{{ x.model }}, {{ x.year }}</p>
{% endfor %}
还可以为值未更改时应显示的内容定义 {% else %}
子句:
实例
循环浏览一个列表,并在值是否更改时写入不同的消息:
{% for x in mylist %}
{% ifchanged %}
<p>New value: {{ x }}</p>
{% else %}
<p>Same value: {{ x }}</p>
{% endifchanged %}
{% endfor %}
语法
{% ifchanged property %}
...
{% endifchanged %}
参数
值 | 描述 |
---|---|
property | 可选。指定需要更改哪些属性才能显示内容。 |