I want to fill a table with a list of results. But not sure how to tell the template that it\'s time to close current and start a new one, after 3 products was already disp
Easiest way is to use the divisibleby
filter.
{% for item in results %}
{% if forloop.counter0|divisibleby:3 %}<tr>{% endif %}
<td>{{ item }}</td>
{% if forloop.counter|divisibleby:3 %}</tr>{% endif %}
{% endfor %}
Even better is to add a foorloop.last
condition to add </tr>
at the end of the last row:
{% for item in results %}
{% if forloop.counter0|divisibleby:3 %}<tr>{% endif %}
<td>{{ item }}</td>
{% if forloop.counter|divisibleby:3 or forloop.last %}</tr>{% endif %}
{% endfor %}