怎样在django 模板中只显示前n条记录

注:不能在view中设定范围,如: categroy.subject_set.all()[:5],要求只能在模板上实现比如:{% for subject in categroy.subject_set.all[:5] %},当然这样的语法肯定是不行。目前使用jinja2模板是可以实现的:{% for subject in categroy.subject_set.all()[:5] %}但希望能有用django自身模板实现的方法
2026年09月27日 00:24
有2个网友回答
网友(1):

django在循环中有一个forloop的变量, 你查一下, 应该对你有用, 判断当前已经遍历了多少条, 然后退出循环就可以了, 不过模板中不支持break和continue语法, 我暂时只能想到这些。

网友(2):

{% for subject in categroy.subject_set.all|slice:":5" %}