Django模板算术

时间:2011-09-27 15:16:19

标签: python django django-templates

在我的模板中,我循环遍历列表,尝试制作两列布局。由于所需的双列布局,我需要在for循环中写入的标记取决于forloop.counter0是偶数还是奇数。如果我在模板语言中拥有Python的全部功能,那么确定forloop.counter0的奇偶校验将是微不足道的,但遗憾的是并非如此。如何使用Django模板语言测试forloop.counter0是偶数还是奇数,或者同样好,是否有另一种方法可以让列表中的元素在左右列中交替显示?

提前致谢!

3 个答案:

答案 0 :(得分:7)

你应该在这里使用cycle。至于你的问题,有一个名为divisibleby的过滤器。

Django模板系统背后的理念是避免在模板中做任何严肃的逻辑。因此,他们只提供工具来对绘制网格等情况进行相当基本的计算。

答案 1 :(得分:2)

您可以将divisibleby过滤器与forloop.counter

一起使用
{% if forloop.counter|divisibleby:"2" %}even{% else %}odd{% endif %}

答案 2 :(得分:1)