Python y desarrollo web

flaskHace unos días, terminé una web para un despacho de abogados, Cunarez Abogados. Al contrario que muchos, yo le tengo un poco de aversión a PHP. ¿Por qué, os preguntaréis? No es nada personal, es sólo que soy más un chico de C y C++, y el hecho de trabajar con PHP me resultaba muy extraño… ocurrían errores debidos a faltas de espacios en blanco, o por no haber cerrado una etiqueta que en teoría debería de estar cerrada, cosas así. De ahí viene también el escalofrío que me recorre el cuerpo cuando me hablan de Javascript…

El caso es, que intentando evitar en la medida de lo posible el tener que tocar código en PHP, busqué otra solución. Y entonces encontré Flask.

Qué es Flask

Flask es un microframework en Python para el desarrollo web, y resulta bastante cómodo y sencillo de utilizar. No es tan aparatoso como Symphony, sino que es más parecido a Silex, otro excelente microframework web derivado de Symphony; y tiene una integración excelente con Openshift, tanto para el despliegue como para las pruebas.

Instalación y uso

La mejor forma de utilizar Flask es a través de virtualenv. En mi caso, usando Ubuntu 16.04, lo instalamos usando el siguiente comando:

sudo apt-get install virtualenv

Y con eso, lo tenemos listo. Para crear nuestro entorno virtual, simplemente entramos en el directorio donde tenemos pensado crear nuestro proyecto y creamos nuestro entorno para después activarlo:

$ mkdir proyectoFlask
$ virtualenv venv
$ . venv/bin/activate

Eso activará nuestro entorno virtual, mientras no cerremos la consola todas las llamadas serán con respecto al entorno recién creado. A continuación, instalamos Flask usando pip:

$ pip install Flask

Después de instalar Flask, podemos crear los directorios que necesitemos. En principio, se nos sugiere crear dos directorios básicos, static y templates, donde almacenaremos el contenido estático de nuestra web (o webapp) y las plantillas que usaremos. Flask utiliza Jinja2 como motor de plantillas HTML, y funciona bastante bien; si has usado alguna vez un motor de plantillas, no tendrás problemas para hacerte con él.

Ejemplo de programa básico

El programa más sencillo que siempre proponen para cualquier nuevo lenguaje, es un Hola Mundo!, y Flask no podría ser menos:

from flask import Flask
app=Flask(__name__)


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

Desde luego, esto no se parece a una página web, pero para poder solucionarlo tenemos el maravilloso render_template que nos permite generar HTML a partir de una plantilla:

from flask import Flask,render_template

app=Flask(__name__)
helloString='Hello World!'

@app.route('/')
def helloWorld():
return render_template('hello.html',helloString)

Esto no es más que una pequeña introducción con un ejemplo muy sencillo de cómo funciona el código en Flask. Si estáis interesados en aprender más, pasaros por su sitio web.

PD: Sí, ya sé que ese código no funciona en Python porque no está indentado… ¡pero es que no hay forma de indentar bloques de código sin instalar un plugin en WordPress! Y si la hay, yo no la conozco…

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s