Ho il seguente codice nel mio modelloDjango Template - Incrementare il valore di una variabile
{% set counter = 0 %}
{% for object in object_list %}
{% if object.attr1 == list1.attr1 and object.attr2 = list2.attr2 %}
<li><a href="{{ object.get_absolute_url }}"> Link {{counter++}} </a></li>
{% endif %}
{% endfor %}
ho l'impostazione del valore di una variabile utilizzando questo custom tag e quello che voglio fare è quello di incrementare il valore solo se il ciclo if
è soddisfatto. So che lo {{counter++}}
non funziona. Ma come posso scrivere un tag personalizzato che farebbe lo stesso compito?
1 bella risposta, [di rinvio] (https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#for) , scusate il gioco di parole –
Generalmente non cerco di aggirare i limiti di Django ma stavolta avevo davvero bisogno di farlo .... Nelle mie condizioni '{{forloop.counter}}' non aiuta. Ho comunque dato il mio codice template, puoi dire se posso usare '{{forloop.counter}}' – Sachin
+1 Usare il contatore forloop è il modo per andare qui. @Sachin: se vuoi usare l'uso a base zero '{{forloop.counter0}}', comunque. –