gpt4 book ai didi

循环迭代两个项目的 Django 模板

转载 作者:行者123 更新时间:2023-12-02 08:47:24 24 4
gpt4 key购买 nike

我尝试在 Django tempalte 中实现一个 forloop,每个循环迭代两个项目,这样

{% for c in cList%}
<ul class="ListTable">
<li>
{{ c1.name }}
</li>
<li>
{{ c2.name }}
</li>

</ul>
{% endfor %}

我知道我的代码不是执行此操作的正确方法,但我还是找不到。我非常感谢任何建议

谢谢

最佳答案

如果您可以控制 cList 列表结构,为什么不将其设为 2 个元素的元组列表或 2 个元素的列表列表,例如

#in the view
cList = [(ob1, ob2),
(ob3, ob4)]

以及模板中的

{% for c1, c2 in cList %}

<ul class="ListTable">
<li>
{{ c1.name }}
</li>
<li>
{{ c2.name }}
</li>
</ul>
{% endfor %}

还可以使用zip函数来方便创建cList,或者定义一个从对象列表创建这种结构的函数,例如

def pack(_list):
new_list = zip(_list[::2], _list[1::2])
if len(_list) % 2:
new_list.append((_list[-1], None))
return new_list

关于循环迭代两个项目的 Django 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7536074/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com