Django es un framework web de Python que ofrece una gran cantidad de herramientas y características para facilitar el desarrollo de aplicaciones web. Una de las características principales de Django es su sistema de plantillas, que permite separar la lógica de presentación de la lógica de negocio.
En este artículo, exploraremos los fundamentos de Django Template Tags, una característica clave de las plantillas de Django. Aprenderemos qué son las Template Tags, cómo se utilizan y cómo podemos crear nuestras propias tags personalizadas.
Las Template Tags son una forma de extender la funcionalidad de las plantillas de Django. Son bloques de código que se insertan en las plantillas y que realizan alguna lógica adicional antes de renderizar el resultado final. Las Template Tags se utilizan para realizar tareas como la iteración sobre una lista de objetos, la ejecución de consultas a la base de datos o la aplicación de filtros a los datos.
Las Template Tags se escriben dentro de llaves dobles ({{ }}
) en las plantillas de Django. La sintaxis básica de una Template Tag es la siguiente:
{{ tag_name argument1 argument2 ... }}
El tag_name
es el nombre de la Template Tag que se desea utilizar y los argumentos
son los valores que se pasan a la tag. Algunas Template Tags no requieren argumentos, mientras que otras pueden aceptar uno o más argumentos separados por espacios.
Django incluye varias Template Tags incorporadas que se pueden utilizar de manera predeterminada. Aquí hay algunos ejemplos de las Template Tags más comunes:
La Template Tag if
se utiliza para realizar una evaluación condicional en una plantilla. Por ejemplo:
{% if condition %}
<!-- código a ejecutar si la condición es verdadera -->
{% else %}
<!-- código a ejecutar si la condición es falsa -->
{% endif %}
La Template Tag for
se utiliza para iterar sobre una lista de objetos. Por ejemplo:
{% for item in list %}
<!-- código a ejecutar para cada elemento de la lista -->
{% endfor %}
La Template Tag include
se utiliza para incluir el contenido de otra plantilla dentro de la plantilla actual. Por ejemplo:
{% include 'nombre_de_la_plantilla.html' %}
Además de las Template Tags incorporadas, Django también nos permite crear nuestras propias Template Tags personalizadas. Esto nos brinda la flexibilidad de agregar funcionalidades específicas a nuestras plantillas.
Para crear una Template Tag personalizada, debemos seguir los siguientes pasos:
templatetags
dentro de nuestra aplicación Django.django.template.Library
.__init__.py
dentro del directorio templatetags
.Aquí hay un ejemplo de cómo se vería una Template Tag personalizada para formatear una fecha:
# myapp/templatetags/date_formatting.py
from django import template
from datetime import datetime
register = template.Library()
@register.simple_tag
def format_date(date):
return datetime.strftime(date, "%Y-%m-%d")
Para utilizar esta Template Tag en una plantilla, debemos cargarla previamente utilizando la Template Tag load
:
{% load date_formatting %}
{{ some_date|format_date }}
Las Template Tags son una herramienta poderosa en el arsenal de Django para trabajar con plantillas. Nos permiten extender la funcionalidad de las plantillas de Django y agregar lógica adicional sin tener que mezclar código Python en nuestras plantillas. Aprender a utilizar y crear Template Tags personalizadas es fundamental para desarrollar aplicaciones web eficientes y flexibles con Django.
Espero que esta guía para principiantes sobre los fundamentos de Django Template Tags haya sido útil. Para obtener más información y ejemplos detallados, te recomiendo revisar la documentación oficial de Django sobre Template Tags aquí.