如何在Django模板中声明变量并递增它

kx7yvsdv  于 2023-07-01  发布在  Go
关注(0)|答案(2)|浏览(165)

如何在Django模板中初始化数值变量。

{% with i=1 %}
    {% for cont in data %}

    {% if i|divisibleby:3 %}
         {{ forloop.i }}
    <!-- HTML -->

    {% elif i|divisibleby:2 %}
         {{ forloop.i }}
    <!-- HTML -->

    {% else %}
         {{ forloop.i }}
    <!-- HTML -->

    {% endif %}
   {% endfor %}

由于{% with i= 1%}而得到此错误

TemplateSyntaxError at /tools-dash/

Unclosed tag on line 21: 'with'. Looking for one of: endwith.

变量i不会每次{{ forloop.i }}递增。对于DB中的每一行,我在else部分中获得相同的模板。如何将其更改为其他选项。

tpxzln5u

tpxzln5u1#

不需要创建新变量。你可以使用普通的for循环,检查forloop.counter是否能被3或2整除。就像这样:

{% for cont in data %}

    {% if forloop.counter|divisibleby:3 %}
        {{ forloop.counter }}
        <!-- HTML -->

    {% elif forloop.counter|divisibleby:2 %}
        {{ forloop.counter }}
        <!-- HTML -->

    {% else %}
        {{ forloop.counter }}
        <!-- HTML -->

    {% endif %}

{% endfor %}
lf5gs5x2

lf5gs5x22#

在这里你需要关闭django标签一样{% with i=1 %} ......your code {% endwith %}

相关问题