"For" iterates over an array or collection. Several useful variables are available to you within the loop.
{% for item in collection %}
{{ forloop.index }}: {{ item.name }}
{% endfor %}
{% for item in collection %}
<div {% if forloop.first %}class="first"{% endif %}>
Item {{ forloop.index }}: {{ item.name }}
</div>
{% endfor %}
Elements in collection can be reversed by using a reversed keyword:
{% for item in collection reversed %}
{{ item.name }}
{% endfor %}You can also define a limit and offset. Remember that offset starts at 0 for the first item.
{% for item in collection limit:5 offset:10 %}
{{ item.name }}
{% endfor %}
| forloop.name | ‘item-collection‘ |
| forloop.length | Length of the loop |
| forloop.index | The current item‘s position in the collection; forloop.index starts at 1. This is helpful for non-programmers who start believe the first item in an array is 1, not 0. |
| forloop.index0 | The current item‘s position in the collection where the first item is 0 |
| forloop.rindex | Number of items remaining in the loop (length - index) where 1 is the last item. |
| forloop.rindex0 | Number of items remaining in the loop where 0 is the last item. |
| forloop.first | Returns true if the item is the first item. |
| forloop.last | Returns true if the item is the last item. |