Avec django il est possible d'avoir un compteur pour une boucle for dans un template en utilisant la syntaxe suivante: forloop.counter, exemple:
{% for i in Mylist %}{{forloop.counter}}{% endfor %}
qui va afficher:
123...
Il est possible d'avoir un compteur qui commence avec 0 plutôt que 1 (par défaut). Dans ce cas il faut utiliser la symtaxte suivante:
{{forloop.counter0}}
pour avoir
0123...
Note: Dans le cas d'une boucle dans une autre boucle il est également possible d'obtenir un compteur correspond à la boucle parente en utilisant {{forloop.parentloop.counter}}:
{% for i in Mylist1 %}{% for j in Mylist2 %}{{forloop.counter}},{{forloop.parentloop.counter}}{% endfor %}{% endfor %}
donne:
1,12,13,1...1,22,23,2...
Recherches associées
| Liens | Site |
|---|---|
| Django built-in | Django doc |
| Django - iterate number in for loop of a template | stackoverflow |
| How to access outermost forloop.counter with nested for loops in Django templates? | stackoverflow |
| Python Django Template: Iterate Through List | stackoverflow |
| how to iterate through dictionary in a dictionary in django template? | stackoverflow |
