Jinja allows me to do
{% for item in all_items %}
{{ item }}
{% endfor %}
but I'd like to be able to only take the first n items; in Python that would be
for item in all_items[:n]:
Is there any elegant way to do this in Jinja, except
{% for item in all_items %}
{% if loop.index <= n %}
{{ item }}
{% endif %}
{% endfor %}
You can use normal python slice syntax.
>>> import jinja2
>>> t = jinja2.Template("{% for i in items[:3] %}{{ i }}\n{% endfor %}")
>>> items = range(10)
>>> print(t.render(items=items))
0
1
2
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With