Django中的计数器嵌套for循环

时间:2015-08-05 04:19:06

标签: python django django-templates

考虑

<ul>
{% for l in [['a', 'b', 'c'], ['d', 'e'], ['f', 'g', 'h', 'i']] %}
{% for i in l %}
<li>
...
</li>
{% endfor %}
{% endfor %}
</ul>

在Django模板中,我应该用{+ 1}替换

...

即。如何获得一个for循环的计数器,其中外部循环中元素的长度始终不变?

更新

1
2
3
4
5
6
7
8
9

给出

<ul>
{% for l in [['a', 'b', 'c'], ['d', 'e'], ['f', 'g', 'h', 'i']] %}
{% for i in l %}
<li>
  {{forloop.counter}}
</li>
{% endfor %}
{% endfor %}
</ul>

1
2
3
1
2
1
2
3
4

给出

<ul>
{% for l in [['a', 'b', 'c'], ['d', 'e'], ['f', 'g', 'h', 'i']] %}
{% for i in l %}
<li>
  {{forloop.parentloop.counter}}
</li>
{% endfor %}
{% endfor %}
</ul>

1 个答案:

答案 0 :(得分:1)

对于内部循环,您可以使用{{ forloop.counter }}。同时,对于外循环,您可以使用{{ forloop.parentloop.counter }}

<强>更新

您是否尝试过{{ forloop.parentloop.counter|add:forloop.counter }}

Source