我不太了解Django或Python,但我知道在模板中使用简单的for循环会产生问题。
我想要做以下事情并想知道我的选择 - 在模板中有一个简单的方法吗?
{% for image in my_images %} //only loop through 1-10
然后:
{% for image in my_images %} //only loop through 10-20
谢谢,
答案 0 :(得分:3)
如果my_images
是一个列表,那么您正在寻找the slice
filter:
{{ some_list|slice:":2" }}
如果some_list为
['a', 'b', 'c']
,则输出为['a', 'b']
。
当然,在优化注释中,通常最好在视图级别执行此操作,而不是获取超出需要的记录。
答案 1 :(得分:0)
如果您需要所有数据但希望以块的形式显示,您可以像这样拆分列表
def Chunks(l, n):
return [l[i:i+n] for i in range(0, len(l), n)]
其中n =任何数字,在您的情况下,它将是10
然后你需要做的就是遍历模板中的分块列表。