Мне нужно создать отфильтрованный forloop внутри forloop. Контекстом является электронная торговля. У меня есть категории продуктов, и в каждой категории есть различные продукты.
Чтобы перечислить их, вот что я делаю:
{% for c in categories %}
Products in {{ c.name }}:
{% for p in products %}
<table>
{% ifequal p.categoryname c.name %}
{% cycle '<tr>' '' '' %}
<td>{{ p.productname }}</td>
{% cycle '' '' '</tr>' %}
{% endifequal %}
</table>
{% endfor %}
{% endfor %}
Мне нужно перечислить продукты в таблицах строк по 3. Однако, циклический переход по продуктам не приведет к ожидаемому эффекту, потому что цикл происходит, даже если утверждение ifequal не выполняется. Можно ли каким-либо образом объединить продукты для петли и неравного состояния через фильтры?
Заранее спасибо!