Cuando estamos desarrollando páginas web con el framework Flask en Python podremos crear de una forma sencilla templates. Y es muy típico que queramos listar un conjunto de elementos dentro del template. En este ejemplo vamos a ver cómo podemos crear templates con listas en Flask.
Crear la Ruta
Lo primero será crear nuestra aplicación Flask.
from flask import Flask
app = Flask(__name__)
@app.route('/')
def holamundo():
return 'Hola'
if __name__ == '__main__':
app.run()
Lo que podemos ver es que nuestra aplicación Flask tiene una ruta para la raíz del proyecto que simplemente nos muestra un «Hola» y la última línea que lo que hace es arrancar la aplicación. En ese momento ya se puede acceder al puerto 5000 de la máquina para ver la aplicación corriendo.
El siguiente paso será crear una lista de elemento dentro del método de la ruta.
@app.route('/')
def holamundo():
lista = {'A','B','C','D'}
return 'Hola'
Ahora tenemos que pasar esta lista a un template. Vamos a asumir que tenemos un template que se llama lista.html
que ahora pasaremos a definir. Necesitaremos del método render_template
para poder llamar al template.
El método render_template
hay que importarlo de la librería Flask.
from flask import Flask, render_template
Y ahora lo invocamos…
def holamundo():
lista = {'A','B','C','D'}
return render_template('lista.html',lista=lista)
Vemos que como parámetro le pasamos la lista de elementos que hemos creado.
Template con la lista
Ahora vamos a definir el template lista.html
. Este template deberá de estar dentro del directorio templates.
/
/templates
El template podrá acceder a la lista que le hemos pasado en la variable lista
. Lo que tendremos que hacer es recorrer dicha lista mediante la estructura de control for
-
{% for elemento in lista %}
- {{ elemento }} {% endfor %}
Para presentar los elementos deberemos de mostrar la variable entre llaves, con dos llaves a cada lado.
Con esto ya sabremos crear templates con listas en Flask.