django 模板:循环遍历类/字符串列表

cli*_*ime 2 django templates

有没有类似的东西:

{% for class in "red", "green", "blue" %}
   <div class="{{ class }}"></div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

在 Django 模板中?

and*_*zep 5

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

{% for cnt in "123"|make_list %}
    <div class="{% cycle 'red' 'green' 'blue' %}"></div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

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

{% for cnt in "123"|make_list %}
    <div class="color_{{ cnt }}"></div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

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

- - 更新 - -

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