Ich habe viele zwischengespeicherte Fragmente auf meiner Website, weil ich das Fragment-Caching mit action_suffix
verwende, um das Caching in meiner Anwendungsvorlage zu verwenden. Ich benutze dies für die Navigation zum Beispiel, ... wie folgt:
Es funktioniert ziemlich gut, aber jetzt habe ich ein kleines Problem, die zwischengespeicherten Fragmente auslaufen zu lassen. Was ich brauche, ist eine Liste aller Schlüssel für die zwischengespeicherten Fragmente. Ich hatte mehr als nur einen Blick auf die Dokumentation, aber ich habe nichts gefunden.
Gibt es eine Möglichkeit, alle Fragmentschlüssel aufzulisten?
Sie können Regexp
an expire_fragment
übergeben :
Laut den Dokumenten
Regexp-Ablauf wird nur für Caches unterstützt, die iterieren können alle Schlüssel (anders als memcached).
Es gibt keine Methode, die ich im Rails-Cache finden kann, um alle Schlüssel aufzulisten. Wenn Sie jedoch den Standard-Dateicache verwenden, können Sie ihn im Dateisystem anzeigen. Wenn Sie im Standard-Rails-Verzeichnis unter Unix / Linux sind, können Sie so etwas verwenden, um alle Cachedateien zu sehen (benannt nach den Schlüssel-URL-Kodierungen):
%Vor%Oder um das zu entzippen und zu entfernen:
%Vor%Wenn Sie einen Regex zum Löschen verwenden, können Sie die meisten Schlüssel löschen, aber beim Debuggen ist es manchmal schön, die tatsächlichen Schlüssel zu sehen, die Sie speichern, wenn Sie komplexe Schlüssel verwenden.
Tags und Links ruby-on-rails caching ruby-on-rails-3.2