我有这个问题与pagination:<a href="{{ request.get_full_path }}{% if request.GET %}&{% else %}?{% endif %}page={{ page_obj.previous_page_number }}">previous</a>
它工作得很好,但每次我点击它,它增加了一个?page=1在URL的末尾,所以点击几次后URL看起来像这样:例如:something?query_params=5&page=1&page=1&page=1&page=1
我知道为什么会发生这种情况,这是因为我把它硬编码到URL中,但我必须使用get_full_path,因为我需要其他查询参数和page
。
所以基本上我想要所有这些查询参数,但没有page=每次更改页面时都会添加一些东西。我只需要一个page
查询参数。
1条答案
按热度按时间rdrgkggo1#
您可以有效地删除视图中的页码,如:
那么在视图中,我们可以使用:
我们也可以创建一个helper函数来包含路径:
从而与以下人员合作:
然而,有点遗憾的是,页面对象本身不能访问请求对象,因此寻呼机可以构造这样的链接。我个人认为这是Django分页系统的缺点之一。