У меня есть подметальная машина, которая должна истечь несколькими кэшами действий. Несмотря на то, что отладчик останавливается сразу перед вызовом expire_action, это фактически не заканчивает действие. Любая идея, что может продолжаться?Кэширование действий не заканчивается правильно, даже когда я вижу, что он называется
Вот соответствующая подметальная машина и контроллер.
# company_sweeper.rb (в каталоге 'моделей')
class CompanySweeper < ActionController::Caching::Sweeper
observe Company
def after_save(company)
expire_cache(company) if company.final_save && company.valid?
end
def expire_cache(company)
debugger <= #debugger stops here!
right before the call
I'm trying to make.
expire_action :controller => 'reports',
:action => 'full_report'
end
end
# reports_controller.rb
class ReportsController < ApplicationController
layout false
caches_action :full_report, :supplier_list, :service_categories
cache_sweeper :company_sweeper
def full_report
#do stuff...
end
end
Как я знаю, что это не истекающий в том, что полный отчет возвращает старые данные, и реагирует почти мгновенно. Странно, правда?
Любые мысли вообще? .... кто-нибудь? :-) – btelles