Ich verwende Rails 3.2.13 und die Rails Asset Pipeline. Ich möchte die Asset-Pipeline verwenden, damit ich SASS und CoffeeScript und ERB für meine Assets verwenden kann und die Pipeline sie automatisch kompiliert, sodass ich die Pipeline in der Entwicklung nicht deaktivieren kann. Ich bin nicht vorkompilieren Vermögenswerte in Entwicklung jemals und es gibt nicht einmal ein public/assets/
Verzeichnis.Disable Ritzels Asset Caching in Entwicklung
Allerdings, wenn ich Änderungen an einer Datei enthalten machen, wie zum Beispiel zu einer _partial.html.erb
-Datei, die (gerendert) in einer layout.html.erb
Datei enthalten ist, ohne dass die Datei verändert sich die einschließlich sich selbst zu tun (in diesem Beispiel layout.html.erb
), Ritzel doesn‘ t die Änderung erkennen und den Cache ungültig machen, so bekomme ich die gleiche veraltete Datei. Wenn ich dies in der aktiven Entwicklung mache, möchte ich das Zwischenspeichern von Assets deaktivieren, damit ich die Änderungen bei jeder Anforderung abrufen kann, aber ich kann nicht herausfinden, wie das geht. Ich habe alle folgenden in meinem development.rb
gesetzt:
config.action_controller.perform_caching = false
config.action_dispatch.rack_cache = nil
config.middleware.delete Rack::Cache
config.assets.debug = true
config.assets.compress = false
config.cache_classes = false
Doch auch mit diesem, Dateien unter tmp/cache/assets/
und tmp/cache/sass/
zeigen und Änderungen sind auf zukünftige Anforderungen nicht zur Verfügung. Jetzt muss ich diese Verzeichnisse jedes Mal manuell löschen, wenn ich eine Änderung sehen möchte.
Leider wird der gesamte Inhalt des How Caching Works Abschnitt der RoR Leitfaden für die Asset-Pipeline ist:
Pinion verwendet den Standard Rails Cache-Speicher in den Cache Vermögenswerte in Entwicklung und Produktion.
TODO: Fügen Sie weitere Informationen zum Ändern des Standardspeichers hinzu.
Also, wie kann ich Sprockets erhalten, Assets auf Anfrage zu kompilieren, aber die Ergebnisse nicht zwischenzuspeichern?
, die völlig fremd ist. :-) Froh, dass Sie es ausgearbeitet haben ... –
Das hat mich absolut dazu gebracht, den Cache des Dateispeichers ein- und auszuschalten, wenn ich versuchte, die Action-Caching-Logik zu testen. (ohne den eigentlichen Caching-Teil). Danke. – CrazyVipa
Dies funktioniert nicht – Benj