当前位置: 首页 > 面试题库 >

访问烧瓶中的多选表单字段

干弘深
2023-03-14
问题内容

我在html文件中有一个multiselect像这样:

<select multiple id="mymultiselect" name="mymultiselect">         
        <option value="1">this</option>       
        <option value="2">that</option>       
        <option value="3">other thing</option>
</select>

当我通过以下方式访问flask / python中的mymultiselect字段时:

request.form['mymultiselect']

或通过使用request.args.get函数,它仅返回一个选定的项目。我了解到,要获取所有选定的项目,我必须在字段名称中添加[],如下所示:

<select multiple id="mymultiselect" name="mymultiselect[]">       
        <option value="1">this</option>       
        <option value="2">that</option>       
        <option value="3">other thing</option>
</select>

通过查看firebug中的发布数据,我可以看到它正在工作,但是我每次尝试在flask / python中访问此字段时,它都会返回null或None。

您如何访问其名称末尾带有“ []”的这些多选表单字段?我也尝试在python代码中的字段名称后附加“ []”,但这似乎不起作用。


问题答案:

您想使用该getlist()函数获取值列表:

multiselect = request.form.getlist('mymultiselect')

不会 需要添加[]的名称,使这项工作; 实际上,这[]将无济于事,根本不要使用它。



 类似资料:
  • 我有困难在提交时在烧瓶应用程序的WTForm页面中获取当前选择的项目。提交时,form.tableselector.data值始终等于1,无论选择了SseltField中的哪个项目(并且所有选项都具有表单(1,'table_name')1-10中的唯一表id,其中1是整数。 以下是当前代码: 意见。派克 form.py 桌面视图。html 我注意到,在调试表单时,wtf元对象csrf属性等于Tru

  • 我发现很难找到有关这方面的资料。会是什么?我如何解决这个问题?有哪些可能的修复方法? UWSGI日志文件 时钟来源:unix检测到CPU核数:4当前工作目录:/home/pi检测到二进制路径:/usr/local/bin/uwsgi!!!没有内部路由支持,重建与pcre支持!!!*警告:您在没有主进程管理器的情况下运行uWSGI进程数限制为7336内存页大小为4096字节检测到最大文件描述符号:6

  • 运行代码时,我不断收到以下错误: 类型错误:“响应”对象不可调用 这是我的代码...

  • 我需要创建一个学生管理系统,它可以帮助多个老师教多个学生,多个学生可以有多个老师。现在我已经在下面创建了一个代码。另外,如果你认为有更好的方法来实现我的目标,请指导,我对多对多的关系是新的,互联网上有这么多方法,这只是让人困惑: 错误是:

  • 我正在使用flask-RESTful开发API,并且对Flask的jsonify函数有问题。我正在使用flask-marshmlet进行JSON序列化。下面是一个非常简化的代码片段: 在本地,endpoint将返回具有键“data”和“error”的json;但是,当在Linux服务器上运行时,它会返回一个包含列表和在没有“data”和“error”键的情况下返回的结果。 我已经确定这种不一致是由

  • 我有一个简单的数据库在mysql和我尝试打印结果,但编码是错误的。它发生在orm模型和纯sql模式中。 在相同的sqlalchemy conf下,纯使用工作而烧瓶应用程序不使用。我也试过用php进行简单的测试,它工作的还可以。 我做错了什么? Mysql变量 在config.py中 带有flask-script的命令 输出 python test.py 如果我在每个大小写中打印类型,唯一有效的大小