如何正确列出Django模板中的表

Sha*_*tle 2 python django django-templates

我目前正在尝试将一个人员列表(aprox 20到30项)分成一个包含4列的表.这是我目前的代码.

<table>
{% for person in people %}
    {% cycle "<tr><td>" "<td>" "<td>" "<td>" %}
        {{ person }}
    {% cycle "</td>" "</td>" "</td>" "</td></tr>" %}
{% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud)

显然,这非常难看,并不总是关闭最后一个TR标签.我找到的另一个选择是将我的人员列表分成4个人的多个列表,然后遍历每个列表.我希望有一种更简单的方法可以单独在模板方面执行此操作,而无需自己扩展django模板(我也发现并考虑过)

谢谢!

Dan*_*man 11

使用divisibleby过滤器.

<tr>
{% for person in people %}
    <td>{{ person }}</td>
    {% if forloop.counter|divisibleby:4 and not forloop.last %}</tr><tr>{% endif %}
{% endfor %}
</tr>
Run Code Online (Sandbox Code Playgroud)