django 永久链接获取变量
有没有办法在使用永久链接时将 get 变量添加到 url 中?
所以www.example.com/1999/news/?filter=entertainment
Is there a way to add get variables into the url while using permalink?
So www.example.com/1999/news/?filter=entertainment
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
恕我直言,永久链接不应包含查询参数。听起来不太对劲。
也就是说,有一种非常粗鲁且非 Django 的方法可以返回一个 URL,就像您从模型的 get_absolute_url() 方法中指定的 URL 一样。
步骤
首先添加一个虚拟 URL 和相应的不执行任何操作的视图。例如,
不过,
Correct_view 必须从
请求中提取
GET 参数。
请注意虚拟 URL 配置和正确 URL 配置是多么相似。只有查询参数在虚拟中是额外的。
, 'dummy_url', {}, name = 'dummy_url'), # views.py def dummy_url(request, *args, **kwargs): pass此虚拟对象仅用于生成 URL。也就是说,如果执行
instance.get_absolute_url()
,您将获得正确的 URL。您必须添加另一个、正确 URL 配置和匹配视图,以便在调用 URL 时实际显示实例页面。像这样的东西。
不过,
Correct_view 必须从
请求中提取
GET 参数。
请注意虚拟 URL 配置和正确 URL 配置是多么相似。只有查询参数在虚拟中是额外的。
IMHO Permalink should not contain a query parameter. It doesn't quite sound right.
That said, there is a very crufty and un-Django like way to return an URL like the one you have specified from the
get_absolute_url()
method of a model.Steps
First add a dummy URL and corresponding do-nothing view. For e.g.
The
correct_view
will have to extract theGET
parameter from therequest
though.Note how similar the dummy and proper URL configurations are. Only the query parameter is extra in the dummy.
, 'dummy_url', {}, name = 'dummy_url'), # views.py def dummy_url(request, *args, **kwargs): passThis dummy will only serve to generate the URL. I.e. you will get the correct URL if you execute
instance.get_absolute_url()
.You will have to add another, proper URL configuration and a matching view to actually display the instance page when the URL is called. Something like this.
The
correct_view
will have to extract theGET
parameter from therequest
though.Note how similar the dummy and proper URL configurations are. Only the query parameter is extra in the dummy.