在Django Python中将视图重定向到另一个视图

时间:2015-01-21 16:08:08

标签: python django

如何从一个视图重定向到另一个视图(下一个视图):

class FooView(TemplateView):
  template_name 'foo.html'

  def post(self, *args, **kwargs):
    return redirect(BarView)
    # return redirect(BarView.as_view()) ???

class BarView(TemplateView):
  template_name 'bar.html'

2 个答案:

答案 0 :(得分:14)

在urls.py中为URL模式本身指定一个名称:

url('/bar/', BarView.as_view(), name='bar')

并将其传递给重定向:

return redirect('bar')

答案 1 :(得分:3)

如果您在urls.py中为视图指定了名称,则可以使用redirect

return redirect('name-of-view-in-urls-py'))