1

嗨,我有一个 Django 视图,它对应于这样的 url:

<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 变量,重定向的最佳方式是什么?

非常感谢任何帮助。

4

2 回答 2

3

模板中的 HTML 是什么样的?尝试将action表单上的属性设置为""(它应该保留您的变量),如下所示:

<form action="" method="post">
于 2013-02-05T22:55:04.177 回答
2

action=""诀窍奏效。如果你想确定,你可以做类似的事情

<form action="{% if request.GET.pitched %}?pitched={{ request.GET.pitched }}{% endif %}" method="post">
于 2013-02-05T23:22:55.883 回答