有没有类似的东西:
{% for class in "red", "green", "blue" %}
<div class="{{ class }}"></div>
{% endfor %}
在 Django 模板中?
好吧,不是直接的,但您可以使用循环与动态列表结合:
{% 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 更好:-)