从第二个视图重定向
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从第二个视图重定向相关的知识,希望对你有一定的参考价值。
这里有一个真正的问题。我在后端有2个视图,确实需要从第二个视图重定向
像这样的观点:
def first_function(request):
""" Here is some stuff """
second_function(request)
return render(request, 'first.html', context)
def second_function(request)
""" Check here something """
if ok:
return
else:
return redirect('/') # this redirect does not work
答案
您的视图second_function
会返回回复。只要视图不引发异常,无论响应的状态代码如何,您的first_function
都将继续。
如果要返回重定向,则必须将结果分配给状态代码,然后必须将second_function
的结果分配给变量,然后检查状态代码。
def first_function(request):
""" Here is some stuff """
response = second_function(request)
if response.status_code == '302':
return response
return render(request, 'first.html', context)
这不是构建代码的好方法,但我无法建议替代方法,因为您的代码显示了您真正想要做的事情。
以上是关于从第二个视图重定向的主要内容,如果未能解决你的问题,请参考以下文章
springmvc怎么重定向,从一个controller跳到另一个controller