因此,我将从数据库中的所有用户加载到一个页面上,并为同一页面上的每个用户生成一个密码重置表单,而不是为每个用户创建一个单独的页面。
我的问题是,由于我有多个表单并通过下拉菜单为每个用户提交按钮,我该如何单击提交并为该特定用户应用更改?
在我的情况下,提交按钮是“重置密码”按钮。
我正在尝试使用以下方式正常调用表格
if request.method == "POST" and form.validate():
password = request.form['password']
但我收到异常错误
name 'form' is not defined
我一直在尝试解决这一问题,但是由于我在同一页面上有多个表单(每个用户一个),现在我感到非常困惑。
注意:我没有使用WTForms完成此任务
谢谢
最佳答案
我不确定是否已经回答了这个问题,但这是我刚刚发现的问题:
遵循您的标准
if request.method == 'POST':
您可以测试request.form数据中每个表单项的存在。因此,在第一个之后添加另一个if语句
if 'my_form_element_name' in request.form:
print ('stuff')
如果您有其他类型的表单数据(例如文件),则可以执行以下操作:
if request.method == 'POST':
if 'file_element_name' in request.files:
return stuff
elif 'my_form_element_name' in request.form:
return stuff
else: return stuff
else: return stuff
我在一个html文件中有四种形式,这种方法对我有用。
关于python - 1页Python FLASK上的多种形式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53134216/