Django 如何链接到同一页面并添加GET参数?获得参数?

Django 如何链接到同一页面并添加GET参数?获得参数?,django,django-templates,Django,Django Templates,我有一页有表格和页码 我可以用鼠标快速浏览网页 <a href="?page={{ myobj.next_page_number }}"> <a href="?page={{ myobj.previous_page_number }}"> 在给定的示例中,单击其中一个超链接时,我会丢失分页或排序。我需要找到一种方法使GET参数相加。因此,当我在第2页时,后者应该显示 <th><a href="?page=2&sort=date&or

我有一页有表格和页码

我可以用鼠标快速浏览网页

<a href="?page={{ myobj.next_page_number }}">
<a href="?page={{ myobj.previous_page_number }}">

在给定的示例中,单击其中一个超链接时,我会丢失分页或排序。我需要找到一种方法使GET参数相加。因此,当我在第2页时,后者应该显示

<th><a href="?page=2&sort=date&order=asc">Date</a></th>


我希望有一个内置的解决方案。我使用的是Django 1.10,但如果需要的话,我不介意升级到1.11。

最简单的方法是在URL.py中使用页面的参数,并在Paginator对象中使用它

p = Paginator(your queryset, N°of record per page)
在p变量中,将找到查询集的页面。 将该值赋给另一个变量

page1 = p.page(1)
在模板中使用:

page1.object_list
如果您愿意,您可以使用 用于管理所有页面和订单。
有关大数据,请参见

我建议您首先生成要附加到视图中所有链接上的字符串,然后将其添加到链接中

下面是如何使用
urlencode
()生成GET参数字符串的示例

from urllib import urlencode, quote
from collections import OrderedDict

page_value = 2
sort_value = "date"
order_value = "asc"
query_string = urlencode(OrderedDict(page=page_value, sort=sort_value, order=order_value))

# outputs page=2&sort=date&order=asc

在视图中获取参数。将它们传递给模板。把它们加在一起
?page={{page}}&sort={{sort}}&order={{{order}}
除了@AndreyShipilov之外,还可以查看模板中可用的
QUERY\u字符串
变量
from urllib import urlencode, quote
from collections import OrderedDict

page_value = 2
sort_value = "date"
order_value = "asc"
query_string = urlencode(OrderedDict(page=page_value, sort=sort_value, order=order_value))

# outputs page=2&sort=date&order=asc