Django URL重定向

如何将与其他URL不匹配的流量重定向回首页?

urls.py:

urlpatterns = patterns('',

url(r'^$', 'macmonster.views.home'),

#url(r'^macmon_home$', 'macmonster.views.home'),

url(r'^macmon_output/$', 'macmonster.views.output'),

url(r'^macmon_about/$', 'macmonster.views.about'),

url(r'^.*$', 'macmonster.views.home'),

)

就目前而言,最后一个条目将所有“其他”流量发送到主页,但是我想通过HTTP 301或302进行重定向。

回答:

你可以尝试称为 RedirectView

`from django.views.generic.base import RedirectView

urlpatterns = patterns(‘’,

url(r’^$’, ‘macmonster.views.home’),

#url(r’^macmon_home$’, ‘macmonster.views.home’),

url(r’^macmon_output/$’, ‘macmonster.views.output’),

url(r’^macmon_about/$’, ‘macmonster.views.about’),

url(r’^.*$’, RedirectView.as_view(url=’‘, permanent=False), name=’index’)

)`

请注意url<url_to_home_view>你实际上需要如何指定url。

permanent=False将返回HTTP 302,而permanent=True将返回HTTP 301。

或者,你可以使用 django.shortcuts.redirect

以上是 Django URL重定向 的全部内容, 来源链接: utcz.com/qa/404643.html

回到顶部