Как проверить последнюю итерацию цикла в шаблоне Django?


Ответы:


229

Вы бы использовали forloop.last. Например:

<ul>
{% for item in menu_items %}
    <li{% if forloop.last %} class='last'{% endif %}>{{ item }}</li>
{% endfor %}
</ul>

2
Если есть вложенные циклы, будет ли он проверять самый внутренний цикл?
Tagar

4
Это особенность более новой версии Jinja? Получение "рендеринга шаблона: 'forloop' не определено" на {% , если нет (forloop.last)%}, {% ENDIF%}
Tagar

1
Если есть вложенные циклы, используйте forloop.parentloopдля доступа к циклу, окружающему текущий. Итак, чтобы проверить последнюю итерацию родительского цикла, можно использовать forloop.parentloop.last. См. Документацию . @Tagar
ndmeiri

Итак, вкратце, forloop.lastпроверим последнюю итерацию самого внутреннего цикла.
ndmeiri

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.