Django使用参数重定向URL,在urls.py文件中?

时间:2016-08-02 15:57:16

标签: python django

我正在使用Django 1.9。有没有办法在我的urls.py文件中使用参数重定向URL?

我希望将/org/123/之类的网址永久重定向到相应的网址/neworg/123

我知道how to redirect within a view,但我想知道是否有任何办法只在urls.py内完成。

1 个答案:

答案 0 :(得分:2)

您可以使用RedirectView。只要旧的和新的url模式具有相同的args和kwargs,就可以使用pattern_name指定要重定向到的url模式。

from django.views.generic.base import RedirectView

urlpatterns = [
    url(r'^neworg/(?P<pk>\d+)/$', new_view, name='new_view'),
    url(r'^org/(?P<pk>\d+)/$', RedirectView.as_view(pattern_name='new_view'), name='old_view')
]