Ver índice de contenidos del libro

22.5. Guardando acciones en la cache

En ocasiones no es posible guardar la página entera en la cache, pero puedes guardar la plantilla asociada a la acción. En otras palabras, puedes guardar en la cache todos los contenidos salvo el layout.

En la aplicación Jobeet no podemos guardar en la cache la página entera debido a la barra del historial de ofertas de trabajo visitadas. Por tanto, modifica la configuración de la cache del módulo job:

# plugins/sfJobeetJob/modules/sfJobeetJob/config/cache.yml
new:
  enabled:     on

index:
  enabled:     on

all:
  with_layout: false

Al establecer la opción with_layout a false, impedimos que el layout se guarde en la cache. No olvides borrar la cache para que los cambios tengan efecto:

$ php symfony cc

Para ver el resultado de la nueva configuración, recarga la página en el navegador:

Resultado de guardar la plantilla en la cache

Figura 22.5 Resultado de guardar la plantilla en la cache

Aunque el flujo de la petición es similar al del caso anterior, guardar en la cache una página sin layout requiere de muchos más recursos.

Flujo de trabajo al guardar una página sin layout en la cache

Figura 22.6 Flujo de trabajo al guardar una página sin layout en la cache