Django - 301 重定向,urls.py 中的查询参数"?page="



在Django 1.10中有一些重复页面的问题。当url .py有以下代码:

urlpatterns = [
...
url(r'^(?P<category_slug>[-w]+)$', views.category_views, name='cat'),
...
]

views.py的一部分:

def category_views(request, category_slug):
category_name = get_object_or_404(Category, slug=category_slug)

部分models.py:

class Category(models.Model):
slug = models.SlugField(max_length=50, unique=True, blank=False, verbose_name=u"URL")

site.com/category_slug ? page = 5site.com/category_slug/? page = 5显示相同的内容。

然后在urls.py中添加下一个重定向:

urlpatterns = [
...
url(r'^(?P<category_slug>[-w]+)$', views.category_views, name='cat'),
url(r'^(?P<category_slug>[-w]+)/$', RedirectView.as_view(pattern_name='cat', permanent=True)),
...
]

现在我有重定向从site.com/category_slug/?page=5site.com/category_slug(无查询参数),但需要site.com/category_slug?page=5

请告诉我在哪里修

根据1.10的文档,您可以简单地将以下关键字参数query_string = True添加到您的url:

url(
r'^(?P<category_slug>[-w]+)/$',
RedirectView.as_view(
pattern_name='cat', 
permanent=True,
query_string=True
)
),

相关内容

  • 没有找到相关文章

最新更新