带参数的 Django RedirectView

Django RedirectView that takes an argument

需要一个从上下文中获取想法的视图并 returns 重定向 url。

这段代码工作正常:

class FooView(RedirectView):
    def get(self, request, id, *args, **kwargs):
        ...
        return HttpResponseRedirect(reverse('foo_space:foo', urlconf='bar.system.urls'))

绝对值得。查看 RedirectView 的作用。首先,它默认重定向所有方法 PUTPOSTHEAD 等,而 View 会为除 get 以外的所有方法抛出 405

并且绝对覆盖 get_redirect_url 以利用上述优势。

仅通过设置 pattern_name 属性可能会更简单,但看起来您还需要 urlconf kwarg,因此此方法可能无效。

https://docs.djangoproject.com/en/1.7/ref/class-based-views/base/#django.views.generic.base.RedirectView.pattern_name