Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将参数添加到现有url?…Django…Paginator_Javascript_Html_Jquery_Django_Pagination - Fatal编程技术网

Javascript 如何将参数添加到现有url?…Django…Paginator

Javascript 如何将参数添加到现有url?…Django…Paginator,javascript,html,jquery,django,pagination,Javascript,Html,Jquery,Django,Pagination,我制作了一个页面,其中显示了数据库中的一些数据。我已经在我的网站上添加了一个分页器。我的网站也有一个搜索栏。所以当用户搜索某物时,URL是 .../search/?q=xyz 所以当我用 <a href="?page={{ walls.next_page_number }}"> next page </a> 但这是个错误…但是,我想要这样的东西 .../search/?q=xyz&page=2 如何实现这一点…在向现有查询字符串添加其他参

我制作了一个页面,其中显示了数据库中的一些数据。我已经在我的网站上添加了一个分页器。我的网站也有一个搜索栏。所以当用户搜索某物时,URL是

.../search/?q=xyz
所以当我用

<a href="?page={{ walls.next_page_number }}"> next page </a>
但这是个错误…但是,我想要这样的东西

.../search/?q=xyz&page=2

如何实现这一点…

在向现有查询字符串添加其他参数时,无法编写保留现有查询字符串的相对URI

您必须将参数添加到实际url中,您的链接如下所示:

或者像这样:


我想您已经明白了:)

您可以使用模板标记将get参数动态组合到分页器中

下面是我如何做到这一点的一个例子

来自django导入模板的

从django.utils.http导入urlencode
register=template.Library()
@register.simple\u标记(接受\u context=True)
def url_替换(上下文,**kwargs):
query=context['request'].GET.dict()
查询.更新(kwargs)
返回urlencode(查询)
{%load url\u replace%}
    {%如果页面_obj.has_previous%}
  • {%endif%}
  • 第{{Page_obj.paginator.num_pages}页中的第{{Page_obj.number}页。
  • {%如果页面_obj.has_next%}
  • {%endif%}

这对我很有效……非常感谢您,我在过去两天里一直在尝试这一功能……最后非常感谢您。只需一个请求就可以解释url_replace()中发生了什么。当然,它会获取请求中的
GET
参数,将它们添加到分页器中所需的kwargs中,并对它们进行编码,以便它们在url中工作,以便它们可以与链接一起传递。
.../search/?q=xyz&page=2