Stu*_*Stu 79 django django-templates
限制对象的方法之一是为这样的函数添加限制
def ten_objects():
obj = Model.objects.all()[0:10] # limit to 10
return {'objects': obj}
Run Code Online (Sandbox Code Playgroud)
但是,如何在模板内而不是在视图内实现此目的?
我知道你可以过滤模板中的对象并限制字符,但是你如何实际限制循环中显示的对象数量.通过模板.例如,以下代码将遍历所有对象....
<ul>
{% for new in news %}
<li>
<p>{{ news.title }}</p>
<p>{{ news.body }}</p>
</li>
{% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)
我怎么打破循环,比如在第一个3个物品/物品之后.我如何在模板中完成它.提前致谢.
Dan*_*man 170
还有一个slice
,你可以在模板中使用的过滤器.这与在视图中切片完全相同.
{% for new in news|slice:":10" %}
Run Code Online (Sandbox Code Playgroud)
小智 12
您想使用切片模板过滤器
以下是您更改使用它的示例:
<ul>
{% for new in news|slice:":3" %}
<li>
<p>{{ new.title }}</p>
<p>{{ new.body }}</p>
</li>
{% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)