Jinja允许我这样做
{% for item in all_items %}
{{ item }}
{% endfor %}
但我希望能够只接受第一个 n 项目;在Python中将是
for item in all_items[:n]:
除了
之外,在Jinja有没有优雅的方法呢?{% for item in all_items %}
{% if loop.index <= n %}
{{ item }}
{% endif %}
{% endfor %}
答案 0 :(得分:21)
您可以使用普通的python切片语法。
>>> import jinja2
>>> t = jinja2.Template("{% for i in items[:3] %}{{ i }}\n{% endfor %}")
>>> items = range(10)
>>> print(t.render(items=items))
0
1
2