Hola Mundo en Flask

- Andrés Cruz

In english

Hola Mundo en Flask

Flask es un framework web estupendo para la creación de aplicaciones web del lado del servidor con Python; si no tienes conocimientos en el uso de frameworks web del servidor con Python, Flask es un buen candidato para inciar; al ser un microframework, lo que significa que inicialmente trae lo mínimo necesario para poder funcionar, puedes ir viendo de a poco cómo funciona el framework sin dar cabida a confusiones con archivos, estructura de directorios o módulos que no haz colocado, como sucede con otros frameworks más robustos como Django, que al crear un proyecto en Django, cuenta con muchos archivos y carpetas.

Finalmente, es momento de crear el "Hola Mundo" con Flask; es decir, implementar lo mínimo necesario para poder ver algo por pantalla; así que, creamos un archivo dentro del proyecto (la carpeta tasks):

main.py

Con el siguiente código:

main.py

from flask import Flask 
app = Flask(__name__) 
 
@app.route('/') 
def hello_world() -> str: 
    return 'Hello Flask!' 

if __name__ == '__main__': 
    app.run() 

El código anterior es una aplicación web completa basada en Flask, de aquí podemos entender el término de microframework que se denota a Flask, ya que, tiene lo mínimo necesario para poder funcionar, por lo tanto, una implementación mínima en Flask puede escribirse en pocas líneas de código; la aplicación anterior, simplemente mostrará "Hello Flask!" en el navegador.

Levantamos la aplicación con:

$ python main.py

Y en la terminal veremos algo como:

 * Serving Flask app 'main'
 * Debug mode: on

WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.

 * Running on http://127.0.0.1:5000

Ahora, si navegamos a la ruta anterior:

http://127.0.0.1:5000. 

Veremos un mensaje de 

Hello Flask!

En la pantalla.

Analicemos un poco más en detalle el código anterior; mediante:

from flask import Flask 
app = Flask(__name__) 

Importamos la clase Flask, que es usada para crear una instancia, la llamada app y que desde la misma se puede realizar múltiples configuraciones a nivel del proyecto como la base de datos, envío de emails, ruteo entre otros, pero, de momento, solamente se emplea para crear una ruta:

@app.route('/') 

Este decorador se emplea para que la función que decora, pueda ser consumida desde una petición HTTP mediante la ruta asociada; es decir, en este ejemplo, la ruta '/' se asigna a la función de vista hello_world()

Cuando un usuario accede a la ruta '/', Flask ejecutará la función hello_world() y devolverá la cadena de texto "Hello Flask!".

Finalmente, se ejecuta la aplicación con:

if __name__ == '__main__': 
    app.run() 

El condicional anterior verifica si el módulo actual es el programa principal que se está ejecutando. Si es así, se ejecuta el código dentro del bloque de código if; que permite iniciar el servidor web que emplea Flask internamente: Werkzeug.

El condicional de if __name__ == '__main__':  permite asegurar que el servidor solo se ejecute si el script se ejecuta directamente desde el intérprete de Python y no desde un módulo importado.

Puedes probar devolver un contenido HTML en vez de un texto como:

main.py

@app.route('/') 
def hello_world(): 
    return '<h1>Hello World!</h1>'
Andrés Cruz

Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter

Andrés Cruz En Udemy

Acepto recibir anuncios de interes sobre este Blog.

!Cursos desde!

10$

En Udemy

Quedan 1d 09:59!

Udemy

!Cursos desde!

4$

En Academia

Ver los cursos

!Libros desde!

1$

Ver los libros
¡Hazte afiliado en Gumroad!