您好我有一个Django视图,对应于这样的网址:
<my_site>/project_info/?pitched=true
我以正常方式验证此页面的表单:
form = ProjectInfoForm(request.POST or None)
if form.is_valid():
# handle form
...
但是当表单返回时出现错误,它会在没有url的同一页面上结束(显然):
<my_site>/project_info/
我真的不想将pitched = true参数更改为捕获的url参数。重定向的最佳方法是什么,考虑到我不知道页面是否有这个GET变量?
任何帮助都非常感激。
答案 0 :(得分:2)
模板中的HTML是什么样的?尝试将表单上的action
属性设置为""
(它应该保留您的变量),如下所示:
<form action="" method="post">
答案 1 :(得分:1)
action=""
诀窍有效。如果你想确定,你可以做类似
<form action="{% if request.GET.pitched %}?pitched={{ request.GET.pitched }}{% endif %}" method="post">