El manejador de vistas proporciona mecanismos a través de los cuales las vistas, los partials y los templates se pueden cachear, el usuario indica el tiempo durante el cual estos estarán almacenados en la cache de manera que el manejador de vistas cargará estos elementos sin necesidad de procesarlos, aumentando el rendimiento de la aplicación.
En este sentido para indicar el tiempo de cache se sigue el formato de la función strtotime de PHP. Ejemplo: ‘+1 week’;
4.7.1 Cache de vistas
Para cachear una vista se utiliza el método View::cache() en el controlador.
<?php |
Cabe destacar que la acción en el controlador se ejecuta, debido a que los datos pasados a la vista pueden de igual manera ser requeridos en el template.
4.7.1.1 Grupos de vistas en cache
Las vistas cacheadas se pueden almacenar en grupos. Los grupos son muy interesantes, ya que se puede borrar la cache por grupos también. Ejemplo: guardar cache de posts en un grupo, al crear, editar o borrar un post, podemos borrar la cache de ese grupo, para que se regenere la cache.
En este caso es necesario indicar en el método View::cache() que se cacheará una vista en un grupo específicoo.
<?php |
4.7.2 Cache de templates
Cachear un template consiste en cachear en conjunto tanto la vista y template para una url específica. Para cachear un template se usa el método View::cache() en el controlador indicando el tiempo durante el cual estará cacheado el template.
<?php |
Cabe destacar que para aumentar el rendimiento no se ejecuta la acción en el controlador, debido a que mostrar el template es el último paso que realiza el manejador de vistas para mostrar la vista al usuario y en este paso ya todos los datos enviados a la vista y template han sido utilizados.
4.7.3 Cache de partials
Para cachear partials se debe indicar como segundo argumento al invocar View::partial() el tiempo durante el cual se cacheará.
<?php View::partial(‘usuario’, ‘+1 day’) ?> |
<?php View::partial(‘usuario’, ‘+1 day’, array(‘nombre’ => ‘pepe’)) ?> |