Обозреватель не очищает кеш в Rails 2.3.2 - помогите пожалуйста - PullRequest
1 голос
/ 01 июня 2010

Мы используем Rails 2.3.2, Ruby 1.8 и memcache.

В моем контроллере сообщений у меня есть:

cache_sweeper Company::Caching::Sweepers::PostSweeper, :only => [:save_post]

Я создал следующий модуль:

module Company
  module Caching
    module Sweepers

      class PostSweeper < ActionController::Caching::Sweeper
        observe Post

        def after_save(post)
          Rails.cache.delete("post_" + post.permalink)
        end
      end

    end
  end
end

но при вызове метода save_post кеш никогда не удаляется. Просто надеюсь, что кто-то может увидеть, что я делаю здесь не так. Спасибо.

Ответы [ 2 ]

0 голосов
/ 12 ноября 2010

возможно, вы не добавили уборщик в путь загрузки

 config.load_paths += %W( #{RAILS_ROOT}/app/models/cache )

, где находится каталог, где находятся ваши подметальные машины.

0 голосов
/ 04 июня 2010

Если действие в контроллере называется save_post, ваш метод подметания должен называться after_save_post(post).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...