2011-11-13 12 views
9

Właśnie uczę systemu szablonów Django i próbuje coś zrobić stosunkowo łatwe:Odpowiednik/funkcja równoważnika Modulus/Modulo w szablonach django?

<h2>State</h2> 
<ul class="states"> 
{% for state in states %} 
    <li class="state_elements" ><a href="/{{ state.name }}/"> {{ state.name }}</a></li> 
    {% if forloop.counter \% 3 == 0 %} 
    <br style="clear: both"/> 
{% endif %} 
{% endfor %} 
</ul> 

pojawia się błąd składni, ponieważ% jest symbolem zastrzeżone dla języka szablonów. To niefortunne.

już znalazł częściowe rozwiązanie

{% cycle "" "" "" '<br style="clear: both"/>' %} 

ale wydaje mi się cholernie dziwne. Czy istnieje lepszy sposób?

Odpowiedz

26

divisibleby

Zwraca TRUE, jeśli wartość jest podzielna przez argument.

Na przykład:

{{ value|divisibleby:"3" }} 

django template doc

+0

Więc po prostu sprawdzić poczytalność, co mogłem zrobić to jako coś jak {% for.counter | divisibleby: "3" %}
{% endif%} – David

+8

{% if forloop.counter | divisibleby: "3"%} – iMom0

Powiązane problemy