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