English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Hemos visto que se puede especificar el método http en las reglas de URL. La función de mapeo de URL recibe los datos del formulario en forma de objeto de diccionario y los transfiere a la plantilla para que se muestren en la página web correspondiente.
En el siguiente ejemplo, URL => / Presentar una página web con formulario ( student.html) Los datos llenados se enviarán al URL => /result.
La función results() recopila los datos del formulario que existen en request.form y los envía a result.html y se muestra.
Esta plantilla presenta dinámicamente la tabla HTML de los datos del formulario.
A continuación, se muestra el código de la aplicación Python -
# Nombre de archivo: example.py # Derechos de autor: 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha: 2020-08-08 from flask import Flask, render_template, request app = Flask(__name__) @app.route('/) def student(): return render_template('student.html') @app.route('/result', methods=['POST', 'GET']) def result(): if request.method == 'POST': result = request.form return render_template("result.html", result=result) if __name__ == '__main__': app.run(debug=True)
A continuación, se muestra student.html del código del script HTML.
# Nombre de archivo: example.py # Derechos de autor: 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha: 2020-08-08 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Flask ejemplo</title> </head> <body> <form action="http://localhost:5000/result" method="POST"> <p>Nombre <input type="text" name="Name"> /></p> <p>Calificación de Física: <input type="text" name="Physics"> /></p> <p>Calificación de Química: <input type="text" name="Chemistry"> /></p> <p>Fracción matemática: <input type = "text" name = "Mathematics"}} /></p> <p><input type = "submit" value = "Enviar" /></p> </form> </body> </html>
El código de la plantilla (result.html) se muestra a continuación -
# Nombre de archivo: example.py # Derechos de autor: 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha: 2020-08-08 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Flask ejemplo</title> </head> <body> <table border = 1> {% for key, value in result.items() %} <tr> <th> {{ key }} </th>/th> <td> {{ value }} </td>/td> </tr> {% endfor %} </table> </body> </html>
Ejecutar el script de Python y escribir la URL en el navegador => http://localhost:5000/ . Los resultados se muestran a continuación -
Al hacer clic EnviarAl hacer clic en el botón, los datos del formulario se presentan en forma de tabla HTML result.html A continuación, se muestra -