Срок действия кеша с настраиваемым cache_path

У меня проблема с истечением срока действия кеша в моем приложении.

Вот мой контроллер:

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.

8
задан Community 23 May 2017 в 11:43
поделиться