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 | 可选。指定需要更改哪些属性才能显示内容。 |