Letztens habe ich in mein FireStation-Projekt caching eingebaut. Was ist mir dann passiert: die Stickies wurden fehlerhaft gecachet und man sah Sie ohne eigentlich der passende User zu sein. Wie kriegen wir das weg?
Direkt ist dies wohl nicht vorgesehen (wer denkt schon daran?).
Da die Stickies an Hand der Session erkannt werden, so können wir diese auch passend auslesen lassen mit der Methode render_stickies.
Der kleine Trick:
- Erstellung eines StickiesController
- Schreiben der Methode: mystickies
def mystickies
respond_to do |wants|
wants.js {render :layout => false } # nur mittels Ajax lesbar
end
end - Erstellen des Views mystickies.rhtml
<%= render_stickies %>
- Einbindung in das Layout
<div id=”stickies”>
<%= javascript_tag “Event.observe(window, ‘load’, function() {new Ajax.Updater(’stickies’, ‘/stickies/mystickies’, {asynchronous:true, evalScripts:true}); });” %>
</div> - Freuen
Soooo einfach geht das!
Etwas ajax, etwas refactoring und alles läuft wie am Schnürchen ![]()
No user commented in " Anzeige von Stickies bei Verwendung von PageCaching oder ActionCaching "
Follow-up comment rss or Leave a Trackback