У меня проблема с истечением срока действия кеша в моем приложении.
Вот мой контроллер:
class ToplistsController < ApplicationController
caches_action :songs, cache_path: :custom_cache_path.to_proc
def custom_cache_path
"#{params[:when]}-#{params[:what]}-#{params[:controller]}-#{params[:action]}"
end
def songs
# ...
end
end
Я каким-то образом нужно иметь возможность сбросить путь к пользовательскому кешу, но я не могу понять, как.
Я уже пробовал использовать этот метод , но безуспешно. Похоже, что Dalli, мой механизм кеширования, не поддерживает сопоставление регулярных выражений.
Я получаю эту ошибку при попытке использовать этот код:
expire_fragment (/ songs /)
ActiveSupport :: Cache :: DalliStore не поддерживает delete_matched
Я пытался использовать эту строку кода для отладки, но она игнорируется.
before_filter only: [:songs]
expire_fragment(custom_cache_path)
end
Я использую Rails 3.1.0.rc6, Dalli 1.0.5 и Ruby 1.9 .2.