{%cycle%}解决嵌套for循环问题?

Jac*_* M. 7 django django-templates

我在Django {% cycle %}模板标签中遇到了一个有趣的"疏忽" .这被列为一个错误,但我想知道是否有一个解决方法呢?

{% for r1 in range_0_2 %}
  {% for r2 in range_0_3 %}
   {{ r1 }}-{{ r2 }}-{{ cycle 'even' 'odd' }}
  {% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

这会产生:

0-0-even
0-1-odd
0-2-even
1-0-odd
1-1-even
1-2-odd
Run Code Online (Sandbox Code Playgroud)

它应该产生:

0-0-even
0-1-odd
0-2-even
1-0-even
1-1-odd
1-2-even
Run Code Online (Sandbox Code Playgroud)

Lan*_*ney 11

我在模板中注意到了同样的问题.

您可以使用以下解决方法:

{% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}
Run Code Online (Sandbox Code Playgroud)