Módulo: Middleware, señales y caché
Este módulo forma parte del curso de Django. Incluye 5 lecciones .
Middleware, señales y caché
El módulo de middleware, señales y caché cubre las capas transversales de una aplicación Django: middleware personalizado para interceptar peticiones y respuestas, señales para comunicación desacoplada entre componentes, framework de caché con Redis, envío de emails y comandos personalizados de manage.py.
Middleware
Los middleware son clases que se ejecutan en orden para cada petición y su respuesta. Django incluye middleware de seguridad, sesiones, autenticación y CSRF. Un middleware personalizado implementa __init__ y __call__, e intercepta tanto la petición entrante como la respuesta saliente para añadir funcionalidad transversal como logging, auditoría o limitación de tasa.
Señales
Las señales permiten que componentes desacoplados de la aplicación se comuniquen cuando ocurren determinados eventos. Las señales predefinidas más usadas son pre_save, post_save, pre_delete y post_delete. El decorador @receiver conecta una función manejadora a una señal de forma declarativa.
from django.db.models.signals import post_save
from django.dispatch import receiver
@receiver(post_save, sender=Usuario)
def crear_perfil(sender, instance, created, **kwargs):
if created:
Perfil.objects.create(usuario=instance)
Caché
Django soporta múltiples backends de caché: Memcached, Redis y base de datos. El decorador @cache_page aplica caché a nivel de vista completa. La API de bajo nivel cache.get(), cache.set() permite caché de fragmentos arbitrarios, mientras que el fragment caching en plantillas usa el tag {% cache %}.
Envío de email y comandos
send_mail() y EmailMessage envían correos configurando EMAIL_BACKEND en settings.py. Los management commands personalizados extienden BaseCommand e implementan handle(), permitiendo automatizar tareas de mantenimiento ejecutables con python manage.py nombre_comando.
Otros módulos de este curso
Middleware, señales y caché
Lecciones de este módulo
Explora todas las lecciones disponibles en Middleware, señales y caché
Todos los módulos del curso
Navega entre los módulos de Django
Middleware, señales y caché
Estás aquíExplora más sobre Django
Descubre más recursos de Django
Alan Sastre
Ingeniero de Software y formador, CEO en CertiDevs
Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, Django es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.