1

有没有类似的东西:

{% for class in "red", "green", "blue" %}
   <div class="{{ class }}"></div>
{% endfor %}

在 Django 模板中?

4

1 回答 1

3

好吧,不是直接的,但您可以使用循环与动态列表结合:

{% for cnt in "123"|make_list %}
    <div class="{% cycle 'red' 'green' 'blue' %}"></div>
{% endfor %}

...另一种选择是为您的 css_classes 提供更通用的名称,例如:color_1、color_2、color_3,然后:

{% for cnt in "123"|make_list %}
    <div class="color_{{ cnt }}"></div>
{% endfor %}

如果您稍后在 css 上更改颜色,这会将您的 css 类与固定颜色分离,这可能是一个好主意。

- - 更新 - -

好的,阅读 nickromano 发布的链接上的答案,我现在意识到我错了。有一种使用 expr 在模板上声明真实列表对象的方法。而且 split 方法比 make_list + cycle 更好:-)

于 2013-04-15T22:19:00.033 回答