Fragment caching

Voir la vidéo
Description Sommaire

La mise en cache permet de stocker le contenu généré lors d'une requête afin de le réutiliser lors de la réponse à une requête similaire. Le cache est donc un moyen efficace d'améliorer les performances de l'application. Rails fournit plusieurs manières de travailler avec le cache mais nous allons nous intérésser plus spécifiquement au Fragment caching aujourd'hui.

Fragment Caching

Comme son nom l'indique le Fragment caching consiste à mettre en cache des "morceau" de notre application.

<%= cache "clef" do %>
  # Code à mettre en cache
<% end %>

Son fonctionnement est relativement simple. Un objet qui implémente la méthode cache_keyou to_params peut aussi être utilisé comme clef. Ainsi il est possible d'utiliser une entité pour la mise en cache.

<%= cache post do %>
  # post.cache_key => "post/5-20071224150000"
<% end %>

Cette méthode permet d'utiliser le champs updated_at en tant que clef et ainsi d'invalider le cache lorsque l'entité est modifiée. Il est d'ailleurs possible d'utiliser la mise en cache directement lors de l'utilisation de la méthode render :

render partial: 'posts/post', collection: @posts, cached: true
Publié
Technologies utilisées
Auteur :
Grafikart
Partager