2012-01-31 3 views
0

Мне нужно создать отфильтрованный forloop внутри forloop. Контекст - электронная торговля. У меня есть категории продуктов, и под каждой категорией есть различные продукты.Django шаблон ifequal фильтр для 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 не выполняется. Есть ли способ объединить продукты forloop и ifequal, через фильтры, возможно?

Заранее благодарен!

ответ

1

Дайте {% regroup %} тег выполнить эту работу.

+0

Мне нравится этот шаблон тега. Я только узнал об этом на днях, и я рекомендовал его много раз с тех пор! –

+0

Спасибо, именно то, что я искал! –

Смежные вопросы