基于“ifchanged”的Django模板中的行着色?

时间:2013-11-13 01:07:35

标签: python django templates twitter-bootstrap

我有一个事件表,我希望在活动发生的那一天将它们分组。

所以我想要这样的东西:

Grey  -> Monday    | event1
Grey  -> Monday    | event2
White -> Tuesday   | event3
Grey  -> Friday    | event4

我正在挠头看着周期,如果改变了,我只是不知道它是如何起作用的。我认为使其成功的唯一方法是设计一个临时变量。

我可以采用工作日的模式,但可能会出现跳过一天的情况。所以我真的希望在一周中的{%ifchanged%}上交替。

(使用Bootstrap,顺便说一句,所以请随意使用它。如果我可以避免使用它,宁可不要使用JS。)

1 个答案:

答案 0 :(得分:1)

您可以为循环的当前状态指定名称,然后在没有任何更改时引用它。

<tr style="background-color:
    {% ifchanged event.date %}
        {% cycle "grey" "white" as rowcolors %}
    {% else %}
        {{ rowcolors }}
    {% endifchanged %}">

    ...

</tr>