Crear un formulario en una aplicación POST nos llevará a saber cómo controlar los datos que subimos. Aquí vamos a ver cómo podemos manejar los parámetros POST con Flask.
Lo primero será crear una ruta que acepte una petición GET la cual nos devuelva un formulario. el formulario lo vamos a renderizar mediante un método render_template()
@app.route('/saludo',methods=['GET'])
def formulario():
return render_template('formulario.html')
La plantilla del formulario será muy sencilla. Lo importante es que el método sea POST y que el campo action
esté apuntando a la misma ruta /saludo
Es muy importante poner los atributos name
en el formulario, ya que será ese atributo el que utilicemos para recuperar el valor.
Ahora volvemos a crear la misma ruta, pero en este caso para que acepte las peticiones POST.
@app.route('/saludo',methods=['POST'])
def saludo():
Para acceder a la información de los atributos del formulario utilizamos el objeto request.form
. Este objeto tiene en una colección los atributos. Así que recuperaremos el valor de los campos nombre y apellidos del formulario mediante el siguiente código:
nombre = request.form['nombre']
apellido = request.form['apellido']
Ya solo nos quedará algo así como devolverlos como respuesta:
@app.route('/saludo',methods=['POST'])
def saludo():
nombre = request.form['nombre']
apellido = request.form['apellido']
return 'Hola ' + nombre + ' ' + apellido
De esta forma ya hemos conseguido manipular y recuperar parámetros POST con Flask.