Files
proyecto-final/docs/views/producto.md
T

1.3 KiB

producto

Archivo: tienda/views.py
URL: /tienda/producto/<id>/
Tipo: Vista pública

Descripción

Muestra la página de detalle de un producto. Implementa una capa de caché en Redis para mejorar el rendimiento: el producto se almacena durante 5 minutos con la clave product_{id}. Si el producto no está en caché, se obtiene de la base de datos junto con sus relaciones (category, primary_image, creator, secondary_images) y se guarda en caché.

Firma

def producto(request: HttpRequest, id: int):

Parámetros

Nombre Tipo Descripción
request HttpRequest Petición HTTP de Django.
id int Identificador del producto.

Contexto del template

Variable Tipo Descripción
product Product Instancia del producto.

Template

tienda/producto.html

Tip

La caché se invalida automáticamente cuando el producto es editado o eliminado (ver editar_producto y borrar_producto). La clave de caché tiene el formato :1:product_{id} en Redis (prefijo de la base de datos 1).