Flask el pequeño gran gigante

Enviado por Francisco Carrizales el Mar, 05/02/2019 - 19:03
flask

Flask es tan simple que en menos de 5min ya estás viendo el hello world en tu navegador. Si necesitas hacer algo rapido sin preocuparte por aprender algo tan robusto con django y si lo que deseas es aprender más de python y de cómo funciona, comenzar con flask donde es un ambiente minimalista, ayuda a comprender mejor frameworks más complejos donde todo ya está en una caja de la cual es muy complicado personalizar.

Flask fue mi primera experiencia en python, con un enfoque web, aunque como mencione es minimalista, puede convertirse poco a poco en algo muy grande es aquí donde aprender a usar Blueprint te ayuda. Y cuando encuentras una manera de estructurar un proyecto capaz de crecer en forma horizontal o mas bien en forma de paquetes de python te enamoras del código.

Con Flask es tan sencillo que su hello work es tan rápido que con tan solo 6 líneas bastan.

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

Tiene todo los que necesitas para ejecutar esa idea que tienes en la cabeza. Su documentación es fabulosa. Lo he utilizado para hacer pruebas con el api de twitter antes de que fuera tan burocrático, hacer pruebas de consultas de api de scrumDo. Crear gráficas, todo mundo adora las gráficas, para aprender sqlalchemy, aprender un poco de análisis de datos, entre otras cosas. Incluso con extensiones puedes tener Queues, usar redis para cache. Ideal para aprender las bases de cómo implementar algo desde cero.

Pero qué tiene de bueno:

Simple por si aún no lo he dejado claro es jodidamente simple hacer un api, hacer una web sencilla. Que te sacará esa espinita de ver tu idea ya en web.

Sistema de plantillas Utiliza un entorno llamado jinja, que con el clásico sistema de {{}} ya muestra los datos. Adiós a las malas prácticas de poner logica en tu vista, Aunque claro el que busca encuentra, si estas queriendo hacer logica en tu vista, algo estas haciendo mal.

Rutas definir como el usuario accede es tan sencillo como solo utilizar un decorador

@app.route('/login')
    tu logica va aquí

@app.route('/login', methods=['GET', 'POST'])
    la lógica va aquí

Session Si necesitas usuarios y permisos ya viene preparado para ejecutar todo un mini sistema de Grupos Permisos y en conjunto con decoradores administrar quién puede acceder a que elementos, lo cual lo hace sumamente accesible.

WSGI puedes hacer ejecutar la aplicación en tu apache clasico. Incluso pude lograr instalar mi ejemplo en un hosting compartido (bluehost)

Blueprint Entramos a territorio oscuro o azul, si llegas a conocer este punto quiere decir que realmente te involucraste demasiado. Blueprint es la forma en la que puedes estructurar un proyecto en flask en directorios o en paquetes de python, Donde la cosas comienza hacer dinámica y acorde a que tantos archivos agreguemos es que tantas urls tendremos disponibles.

UnitTest parece que me he alejado un poco del proyecto, que ya incluye un tutorial de como integrar las pruebas unitarias a flask una cosa más que aprender.

Conclusión recomiendo darle una oportunidad a Flask, ya que realmente es muy sencillo de usar, en conjunto con su documentación que te guía de mano, en la creación de blog.

Etiquetas

Añadir nuevo comentario

HTML Restringido

  • Etiquetas HTML permitidas: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Saltos automáticos de líneas y de párrafos.
  • Las direcciones de correos electrónicos y páginas web se convierten en enlaces automáticamente.