在我的Django模板中:我只是在传递给模板的数据长度为3时,试图在我的for循环中添加一个额外的div。这就是我现在正在尝试的但是似乎有可能比做两个if语句更好的方法来检查长度:
{% if items|length == 3 %}
<div class='three-item-wrap'>
{% endif %}
{% for item in items %}
.......
{% endfor %}
{% if items|length == 3 %}
</div> //close .three-item-wrap
{% endif %}
答案 0 :(得分:1)
我认为更好的方法是进行单个if语句检查。就像这样:
{% if items|length == 3 %}
<div class='three-item-wrap'>
{% for item in items %}
.......
{% endfor %}
</div>
{% else %}
{% for item in items %}
.......
{% endfor %}
{% endif %}
这种方式更好,因为Django渲染引擎首先检查if
语句,然后进行for
循环。
如果您的代码出现问题,div
将无法关闭代码</div>
。在我的代码中,没有选项可以让div没有关闭代码。
答案 1 :(得分:0)
你可以尝试那样
{% if items|length == 3 %}
<div class='three-item-wrap'>
{% for item in items %}
.......
{% endfor %}
</div>
{% else %}
#another logic goes here
{% endif %}
如果您想了解更多信息,请参阅文档django if tempalate