在 Flask 中提交表单值
要在 Flask 应用程序中有效地发布和检索表单值,请验证您的表单元素是否具有唯一的和信息性 name 属性。
问题:
在提供的代码中,表单字段缺少 name 属性,导致 request.form 保持为空并导致 400 错误尝试通过 ID 访问值时。
<pre class="lang-html prettyprint-override"><input id="my_input" type="text" value="{{ email }}"> <input id="my_submit" type="submit" value="Submit"> </form>
解决方案:
为您的输入元素赋予适当的名称值:
<pre class="lang-html prettyprint-override"><input name="my_input" id="my_input" type="text" value="{{ email }}">
一次实现后,Flask 将正确解释提交的表单数据并使其可通过 request.form:
@app.route('/page', methods=['POST', 'GET']) def get_page(): if request.method == 'POST': print(request.form) # prints ImmutableMultiDict({ 'my_input': {{ email }}}) print(request.form['my_input']) # displays the value of 'my_input' return render_template('page.html')
以上是为什么我的 Flask 表单数据没有提交?的详细内容。更多信息请关注PHP中文网其他相关文章!