私は Rails アプリケーションに取り組んでおり、Dalli を使用してキャッシュと memcache を統合しています。スイーパーを使用して、アクションのキャッシュと期限切れのキャッシュに取り組んでいます。私のスイーパーコードは次のようになります。
class BoardSweeper < ActionController::Caching::Sweeper
observe Board
def after_create(board)
expire_cache(board)
end
def expire_cache(board)
expire_action :controller => :boards, :action => :show, :id => "#{board.id}-#{board.title.parameterize}"
end
end
しかし、正規表現を使用してキャッシュを削除したい、つまり、次のようにURLを一致させてキャッシュを削除したい:
私のボードショーの URL が次のような場合:
"boards/1/likes-collection-of-branded-products.text/javascript"
"boards/1/likes-collection-of-branded-products.text/html"
次に、次の式を使用してキャッシュを期限切れにします。
Rails.cache.delete_matched(/boards\/1.*/)
しかし、memcache api docによると、 delete_matchedメソッドはサポートされていません。
正規表現に基づいて削除する方法があるはずです。助けてください。
どうもありがとう!!