Warm tip: This article is reproduced from serverfault.com, please click

jinja2-如何在python jinja模板中输出loop.counter?

(jinja2 - How to output loop.counter in python jinja template?)

发布于 2012-08-27 16:02:20

我希望能够将当前循环迭代输出到我的模板。

根据文档:http : //wsgiarea.pocoo.org/jinja/docs/loops.html,我正在尝试使用一个loop.counter变量。

我有以下几点:

<ul>
{% for user in userlist %}
  <li>
      {{ user }} {{loop.counter}}
  </li>
      {% if loop.counter == 1 %}
          This is the First user
      {% endif %}
{% endfor %}
</ul>

虽然没有任何输出到我的模板。正确的语法是什么?

Questioner
Rolando
Viewed
11
sigi 2012-08-28 02:08:59

循环内部的计数器变量在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

有关更多信息,请参见http://jinja.pocoo.org/docs/templates/