我有一个视图,我想要做一些内容,然后重定向到另一个视图,并带有成功消息。我要重定向到的方法的签名是
quizView(request, quizNumber, errorMessage=None, successMessage=None):
我尝试重定向到该视图时看起来像这样:
return redirect(quizView, quizNumber=quizNumber, errorMessage=None, successMessage="Success!")
我已经尝试了大多数命名和未命名的参数的组合,我无法让它做我想要的。有没有办法使这项工作?
另外,我尝试使用第一个视图返回第二个视图,但后面的URL仍然是旧视图中的位置,而不是显示为重定向。
谢谢!
答案 0 :(得分:34)
您没有为您的URL指定名称,因此您需要使用视图功能的整个路径。此外,该网址不会使用errorMessage
或successMessage
个参数,因此将其置于reverse
调用中将会失败。这就是你想要的:
return redirect('quizzes.views.quizView', quizNumber=quizNumber)
答案 1 :(得分:5)
您可以尝试https://docs.djangoproject.com/en/dev/topics/http/shortcuts/#redirect
中给出的示例2答案 2 :(得分:-1)
您应该参考此https://docs.djangoproject.com/en/1.11/topics/http/shortcuts/#redirect
用于重定向内部视图。您可以使用为视图创建URL或在视图内部调用来重定向。