Вопрос

В jinja переменная loop.index содержит номер итерации текущего выполняемого цикла.

Когда у меня есть вложенные циклы, как я могу получить во внутреннем цикле текущую итерацию внешнего цикла?

Это было полезно?

Решение

Сохраните его в переменной, например:

{% for i in a %}
    {% set outer_loop = loop %}
    {% for j in a %}
        {{ outer_loop.index }}
    {% endfor %}
{% endfor %}

Другие советы

Вы можете использовать loop.parent внутри вложенного цикла, чтобы получить контекст внешнего цикла

{% for i in a %}
    {% for j in i %}
        {{loop.parent.index}}
    {% endfor %}
{% endfor %}

Это гораздо более чистое решение, чем использование временных переменных.Источник - http://jinja.pocoo.org/docs/templates/#for

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top