【发布时间】:2010-10-24 15:31:57
【问题描述】:
我有一个基本问题,在 Django 模板语言中,如何判断您是否处于 for 循环中的最后一次循环迭代?
【问题讨论】:
标签: django for-loop django-templates
我有一个基本问题,在 Django 模板语言中,如何判断您是否处于 for 循环中的最后一次循环迭代?
【问题讨论】:
标签: django for-loop django-templates
您将使用forloop.last。例如:
<ul>
{% for item in menu_items %}
<li{% if forloop.last %} class='last'{% endif %}>{{ item }}</li>
{% endfor %}
</ul>
【讨论】:
forloop.parentloop 访问当前循环周围的循环。因此,要检查父循环的最后一次迭代,可以使用forloop.parentloop.last。请参阅documentation。 @Tagar
forloop.last 将检查最内层循环的最后一次迭代。
{{ forloop.last }}
【讨论】:
您基本上可以在for 循环中使用此逻辑:
{% if forloop.last %}
# Do something here
{% endif %}
例如,如果你需要在除最后一项之外的每一项后加逗号,你可以使用这个sn-p:
{% for item in item_list %}
{% if forloop.last %}
{{ item }}
{% else %}
{{ item }},
{% endif %}
{% endfor %}
这将成为一个包含三个项目的列表:
first_item, second_item, third_item
【讨论】: