2009-04-19 5 views
2

J'ai un ensemble de pages en grande partie statiques que je serais heureux de mettre en cache pendant des périodes relativement longues, sauf que leur mise en page comprend beaucoup plus en-tête dynamique.Quelle est la meilleure option de mise en cache Rails pour les pages en grande partie statiques avec un en-tête dynamique

L'idée la plus prometteuse semble jusqu'à présent être la mise en cache d'action sans mise en page: -

class SomethingController < ApplicationController 

    caches_action :index, :layout => false 

end 

Ensuite, au moins le contenu principal de la page est mise en mémoire cache. Cela a-t-il du sens?

Ou ferais-je mieux de faire quelque chose d'autre, par ex. mise en cache de fragments, inclusion côté serveur, etc ...?

Répondre

4

Ce que je l'ai fait est d'utiliser la mise en cache de la page, puis faire un appel AJAX pour aller chercher soit:

  1. L'en-tête ensemble.
  2. Parties spécifiques de l'en-tête dynamiques.

De même, si vous souhaitez simplement inclure le nom d'utilisateur, une meilleure solution existe. Enregistrez simplement leur nom dans un cookie, puis utilisez javascript pour l'afficher dans l'en-tête. Sans cookie, affichez un lien pour vous connecter ou vous enregistrer.

Questions connexes