【发布时间】:2021-04-12 19:48:03
【问题描述】:
我在 Django 中有一个表单,我使用如下代码提交:
XHR.open("POST", "/route/to/post/view");
XHR.send(formData);
它的路线看起来像这样:
def my_view(request):
if request.method == "GET":
context = {"object": Perso.objects.all()}
return render(request, "myview.html", context)
elif request.method == "POST":
print("post request is", request.POST)
print("redirecting...")
return redirect("/route/to/another-view")
我知道这可以正常工作,因为当我按下 POST 按钮页面时会打印以下输出:
post request is <QueryDict: {'csrfmiddlewaretoken': ['6pdzvTNVO8d1KhS9w3IevFGD7w3bprBRQtUaO1TuXDS4RIkTP44IlFdYwJQB7czx'], 'vaccinator': ['tilley evan']}>
redirecting...
[12/Apr/2021 15:42:34] "POST /route/to/post/view HTTP/1.1" 302 0
[12/Apr/2021 15:42:34] "GET /route/to/another-view HTTP/1.1" 200 3546
在 Chrome 中,我可以看到发出了成功的 GET 请求,但由于某种原因,页面本身并没有改变。
这里有什么建议吗?
【问题讨论】:
标签: python django http redirect