如何在Django模板中访问具有嵌套for循环的最外层forloop.counter?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (51)

是否可以在Django中访问以下模板中最外层的for循环的forloop.计数器:

{% for outerItem in outerItems %}
    {% for item in items%}
        <div>{{ forloop.counter }}.&nbsp;{{ item }}</div>
    {% endfor %}
{% endfor %}

计数器返回上面示例中最内部的for循环计数器

提问于
用户回答回答于

你可以用forloop.parentloopforloop外面去

所以在你的情况下{{forloop.parentloop.counter}}

用户回答回答于
{% for outerItem in outerItems %}
  {% with forloop.counter as outer_counter %}
    {% for item in items%}
        <div>{{ outer_counter }}.&nbsp;{{ item }}</div>
    {% endfor %}
  {% endwith %}
{% endfor %}

如果使用Django的高级版本,可以使用

{% with outer_counter = forloop.counter %}

Django 1.4.x-Django 1.9.x支持这两种方法。

扫码关注云+社区

领取腾讯云代金券