因此,我将从数据库中的所有用户加载到一个页面上,并为同一页面上的每个用户生成一个密码重置表单,而不是为每个用户创建一个单独的页面。

我的问题是,由于我有多个表单并通过下拉菜单为每个用户提交按钮,我该如何单击提交并为该特定用户应用更改?

在我的情况下,提交按钮是“重置密码”按钮。

python - 1页Python FLASK上的多种形式-LMLPHP

我正在尝试使用以下方式正常调用表格

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/

10-09 06:30