gpt4 book ai didi

python - 如何在 Django 中访问表单提交按钮的值?

转载 作者:IT老高 更新时间:2023-10-28 21:00:10 26 4
gpt4 key购买 nike

我有一个 Django 项目,在一个页面上,有多个表单(在不同的标签中)可以提交以产生不同的效果。在所有情况下,我都希望将用户重定向回同一页面,因此我在我的 View 中使用提交表单然后重定向到原始页面的模式。至少在一种情况下,两个表单之间的唯一区别是提交按钮的值。

在我看来,我有代码(这是我的 View 函数第一次访问 request.POST ):

if request.POST['submit']=='Add':
#code to deal with the "Add" form

在模板中,第一个表单有一个提交按钮,例如

<input type="submit" value="Add">

我认为这会起作用,但是当我提交该表单时,我在上面看到的行中收到错误:

Key 'submit' not found in <QueryDict: {u'clientyear': [u'2012'], u'csrfmiddlewaretoken': [u'be1f2f051f09f6ab0375fdf76cf6a4d7'], u'ben': [u'123405']}>

显然,这没有 'submit'键或具有与我单击的提交按钮相对应的值的任何键。那么,既然这不起作用,那么如何访问提交按钮的值或判断哪些表单已提交?

最佳答案

Submit 是一个 HTML 表单结构...您必须使用表单对象的 name 属性,如下所示...在您的模板中:

<form>
...
<input type="submit" name="list" value="List Objects" />
</form>
<form>
...
<input type="submit" name="do-something-else" value="Do Something Else" />
</form>

在你看来:

if 'list' in request.POST:
# do some listing...
elif 'do-something-else' in request.POST:
# do something else

关于python - 如何在 Django 中访问表单提交按钮的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10607091/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com