考虑
<ul>
{% for l in [['a', 'b', 'c'], ['d', 'e'], ['f', 'g', 'h', 'i']] %}
{% for i in l %}
<li>
...
</li>
{% endfor %}
{% endfor %}
</ul>
在 Django 模板中,我应该用什么替换 ...
才能得到
1
2
3
4
5
6
7
8
9
即如何获得嵌套 for 循环的计数器,其中外部循环中元素的长度并不总是相同?
更新
<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
1
1
2
2
3
3
3
3
最佳答案
对于内部循环,您可以使用{{ forloop.counter }}
。同时,对于外循环,您可以使用 {{ forloop.parentloop.counter }}
。
更新
您是否尝试过执行{{ forloop.parentloop.counter|add:forloop.counter }}
?
关于python - Django 嵌套 for 循环中的计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31823370/