Я использую Devise в качестве решения для аутентификации в Rails, и у меня есть кэшированный фрагмент: latest_users.
Я хочу, чтобы срок действия этого фрагмента истек при регистрации, изменении или удалении нового пользователя, поэтому я вставил свой (созданный вручную) users_controller.rb
class UsersController < ApplicationController
cache_sweeper :user_sweeper, :only => [:create, :update, :destroy]
...
Но мой фрагмент не истекает, когда новые создаются или изменяются.
Мой user_sweeper содержит основные рецепты
class UserSweeper < ActionController::Caching::Sweeper
observe User
def after_save(user)
expire_cache(user)
end
def after_destroy(user)
expire_cache(user)
end
private
def expire_cache(user)
expire_fragment :recent_users
end
end
Что я делаю не так?