我有一个HTML表单,可以发布到Flask路由.但是,request.form
是空的.如果我尝试通过id访问其中一个值,我会收到400错误.如何从HTML表单发布值并在Flask中访问它们?
<form method="POST">
<input id="my_input" type="text" value="{{ email }}">
<input id="my_submit" type="submit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)
@app.route('/page', methods=['POST', 'GET'])
def get_page():
if request.method == 'POST':
print(request.form) # prints ImmutableMultiDict([])
print(request.form['my_input']) # raises 400 error
return render_template('page.html')
Run Code Online (Sandbox Code Playgroud)
你input
没有name
属性.这就是客户端将传递给服务器的内容.如果您访问未提交的表单密钥,Flask将引发400错误.
<input name="my_input" id="my_input" type="text" value="{{ email }}">
Run Code Online (Sandbox Code Playgroud)