Gogole App Engine用フレームワーク Kay のテンプレートエンジンに使用されている Jinja2 でループのインデックスを取得する方法。
enumerate()みたいなことをJinja2でしたい。
for index, item in enumerate(items):
print '%d %s' % (index, item)
Jinja2にはループの中で使用できる「loop」という特別な変数が用意されている。
「loop.index0」を使用すると、ループのインデックスを取得することができる。
<table>
{% for item in items %}
<tr>
<td>{{ loop.index0 }}</td>
<td>{{ item }}</td>
</tr>
{% endfor %}
</table>
「loop.index」は、ループのインデックスが1から始まる。
<table>
{% for item in items %}
<tr>
<td>{{ loop.index }}</td>
<td>{{ item }}</td>
</tr>
{% endfor %}
</table>
Pingback: Jinja2 テンプレート構文 [Ansible] – Site-Builder.wiki