Python Jinja2-以x为一组呈现列表项
我希望在jinja2模板中输出表中的项目列表 当前代码:Python Jinja2-以x为一组呈现列表项,python,html,flask,jinja2,Python,Html,Flask,Jinja2,我希望在jinja2模板中输出表中的项目列表 当前代码: <table style="width:100%"> {% for i in sales %} <tr> <td>{{i}}</td> </tr> {% endfor %} </table> 预期产出: item item item item item item item item ite
<table style="width:100%">
{% for i in sales %}
<tr>
<td>{{i}}</td>
</tr>
{% endfor %}
</table>
预期产出:
item item item
item item item
item item item
item item item
...
我希望输出分布在三列上,即在表中从左到右循环,然后在3项之后开始一个新行 您可以使用该测试
{sales%中的i的%
{%if loop.index0可被(3)%整除}
{%endif%}
{{i}
{%如果loop.index可被(3)%整除}
{%endif%}
{%endfor%}
您可以使用
感谢您的回答,但此jsut输出一行:
item。。。项目
item item item
item item item
item item item
item item item
...
{% for i in sales %}
{% if loop.index0 is divisibleby(3) %}
<tr>
{% endif %}
<td>{{i}}</td>
{% if loop.index is divisibleby(3) %}
</tr>
{% endif %}
{% endfor %}
>>> import jinja2
>>> t = jinja2.Template("{% for i in items|batch(3) %}{{i}}{% endfor %}")
>>> items = ['1', '2', '3', '4', '5', '6', '7', '8', '9']
>>> print t.render(items=items)
>>> ['1', '2', '3']['4', '5', '6']['7', '8', '9']