Publique valores desde un formulario HTML y acceda a ellos en una vista Flask

Resuelto asked hace 10 años • 2 respuestas

Tengo un formulario HTML que se publica en una ruta de Flask. Sin embargo, request.formestá vacío. Si intento acceder a uno de los valores por identificación, aparece un error 400. ¿Cómo publico valores desde un formulario HTML y accedo a ellos en Flask?

<form method="POST">
  <input id="my_input" type="text" value="{{ email }}">
  <input id="my_submit" type="submit" value="Submit">
</form>
@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')
 avatar Sep 05 '14 03:09
Aceptado

Tu inputno tiene un nameatributo. Eso es lo que el cliente pasará al servidor. Flask generará un error 400 si accede a una clave de formulario que no se envió.

<input name="my_input" id="my_input" type="text" value="{{ email }}">
dirn avatar Sep 04 '2014 20:09 dirn