我希望能够将当前循环迭代输出到我的模板。
根据the docs ,我正在尝试使用一个 loop.counter
变量:
<ul>
{% for user in userlist %}
<li>
{{ user }} {{loop.counter}}
</li>
{% if loop.counter == 1 %}
This is the First user
{% endif %}
{% endfor %}
</ul>
但是正在输出到我的模板。正确的语法是什么?
最佳答案
循环内的计数器变量在 Jinja2 中称为 loop.index
。
>>> from jinja2 import Template
>>> s = "{% for element in elements %}{{loop.index}} {% endfor %}"
>>> Template(s).render(elements=["a", "b", "c", "d"])
1 2 3 4
除了loop.index
,还有
loop.index0
(索引从0
开始)loop.revindex
(反向索引;结束于1
)loop.revindex0
(反向索引;结束于0
)https://stackoverflow.com/questions/12145434/