如果我添加paginator
,则会在同一页面上打印多个paginator
。因为我包含在forloop
中。我该如何解决这个问题?请帮忙
----------------------
{% autopaginate recipes %}
{% for recipe in recipes %}
{{ forloop.counter }}
{% endfor %}
-----------
这是我的完整代码。
{% with followers=current_user.get_profile.get_following.all %}
{% for follower in followers %}
{% with recipes=follower.recipe_set.all %}
{% for recipe in recipes %}
{{ forloop.counter }}
{% endfor %}
{% endwith %}
{% endfor %}
{% endwith %}
结果 - > 1 2 3 1 2 3 ...... 50
。它应该是53
。所以我可以轻松使用paginator
感谢
答案 0 :(得分:0)
setup.py file of django-pagination中的文档字符串提到了以下内容,
- 醇>
确定要分页的变量,并在迭代之前对该变量使用autopaginate标记。这个 可以采取两种形式之一(使用规范
object_list
作为示例变量):
{% autopaginate object_list %}
这假定您希望每页默认20个结果。如果您想指定自己的金额 每页结果,您可以这样指定:
`{% autopaginate object_list 10 %}`
请注意,这会将
object_list
替换为当前页面的列表,因此您可以像往常一样迭代object_list
。
- 醇>
现在您要显示当前页面和可用页面,所以在使用autopaginate之后的某个地方,使用分页 包含标签:
{% paginate %}
这不带任何参数,但假设您已经调用过autopaginate,所以请务必先这样做。
就是这样!您现在已经分页
object_list
并给予用户 该网站是一种在不同页面之间导航的方式 - 所有这些都没有 感动你的意见。
那么,在autopaginate之后你在哪里使用paginate标签?你实际上不需要循环食谱,autopaginate应该在你调用paginate的任何地方为你做。