Использование помеченного тега шаблона Django с forloop.counter - PullRequest
1 голос
/ 07 июня 2011

Теги шаблонов Django включают тест {% ifchanged %} для использования внутри циклов, чтобы проверить, изменилось ли значение.Я использую его для вывода нового тега <div> каждый раз, когда меняется переменная.

Я хочу, чтобы каждый 4-й <div> имел определенный класс, но переменная Django forloop.counter здесь не помогает, так какон увеличивается каждый раз, когда выполняется цикл, даже когда тест {% ifchanged %} не выполняется, поэтому он выводит нерегулярно.

Кто-нибудь знает способ обойти это?Очевидно, я не могу установить свой собственный счетчик в представлении Django, поэтому у меня нет возможности проверить, когда изменился «внутренний» цикл.

Спасибо, Мэтт

1 Ответ

3 голосов
/ 07 июня 2011

Вы можете просто использовать фильтр divisibleby :

{% if forloop.counter|divisibleby:"4" %}
   ....
{% endif %}

Обновление:

Вы должны использовать фильтр + divisibleby в своем шаблоне.Посмотрите на этот тег шаблона: Счетчик , он может вам помочь.

Или

Отфильтруйте дублирующиеся элементы (если это возможно) в представлении перед передачей их в шаблон ииспользуйте фильтр divisibleby.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...