Я использую Rails 3.2.13 и Rails Asset Pipeline. Я хочу использовать Asset Pipeline, чтобы я мог использовать SASS, CoffeeScript и ERB для своих активов, и Pipeline автоматически их компилирует, поэтому я не могу отключить конвейер в разработке. Я не прекомпиляции активов в разработке никогда и нет даже каталога public/assets/
.Отключить кэширование активов Sprockets в разработке
Однако, когда я внести изменения в включаемом файл, например, в _partial.html.erb
файл, который включается (оказанным) в layout.html.erb
файле, без изменения файла делают включая себя (в этом примере layout.html.erb
), Звездочки Безразлично» t обнаруживает изменение и делает недействительным кеш, поэтому я продолжаю получать один и тот же устаревший файл. Когда я делаю это в активной разработке, я хочу отключить любое кэширование активов, чтобы я мог получать изменения по каждому запросу, но я не могу понять, как это сделать. Я поставил все следующие в моем development.rb
:
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
Тем не менее, даже с этим, файлы появляются под tmp/cache/assets/
и tmp/cache/sass/
и изменения не доступны в последующих запросах. Сейчас я должен вручную удалить эти каталоги каждый раз, когда хочу увидеть изменение.
К сожалению, все содержимое How Caching Works раздела Руководства RoR для трубопровода активов является:
Звездочки использует хранилище кэша по умолчанию Rails для активов кэша в разработке и производстве.
TODO: дополнительная информация об изменении хранилища по умолчанию.
Итак, как я могу получить звездочки для компиляции активов по требованию, но не кэшировать результаты?
То есть совершенно странно. :-) Рад, что вы сработали ... –
Это было абсолютно убийство меня, чтобы включить и выключить кеш хранилища файлов при попытке проверить логику кэширования действий. (без фактической части кэширования). Спасибо. – CrazyVipa
Это не работает – Benj