{%cycle%}用于嵌套for循环? [英] {% cycle %} work around for nested for loops?

查看:159
本文介绍了{%cycle%}用于嵌套for循环?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

  {range for range_0_2%}中的r1%
{range for range_0_3%中的r2%}
{ r1}} - {{r2}} - {{cycle'even''odd'}}
{%endfor%}
{%endfor%}

这将产生:

  0-0-even 
0-1-odd
0-2-even
1-0-odd
1-1-even
1-2-odd

应该得到:

  0-0-even 
0-1-odd
0-2-even
1-0-even
1-1-odd
1-2 -even


解决方案

我注意到我的模板中有同样的问题。



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

  {%如果forloop.counter | divisibleby:2%}甚至{%else%} odd {%endif%} 


I ran into an interesting "oversight" in the Django {% cycle %} template tag. This has been listed as a bug, but I'm wondering if there is a workaround for it?

{% for r1 in range_0_2 %}
  {% for r2 in range_0_3 %}
   {{ r1 }}-{{ r2 }}-{{ cycle 'even' 'odd' }}
  {% endfor %}
{% endfor %}

This yields:

0-0-even
0-1-odd
0-2-even
1-0-odd
1-1-even
1-2-odd

It should yield:

0-0-even
0-1-odd
0-2-even
1-0-even
1-1-odd
1-2-even

解决方案

I have noticed the same problem in my templates.

You can use a workaround like the following:

{% if forloop.counter|divisibleby:2 %}even{% else %}odd{% endif %}

这篇关于{%cycle%}用于嵌套for循环?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆