0
어. 오늘은 내 날이 아니야.레일즈 expire_action in observer?
나는 내가 지켜 클래스 중 하나의 갱신을하고 after_update가 호출지고 우리의 레일 3.0 응용 프로그램
class EventObserver < ActionController::Caching::Sweeper
observe :live_event, :event
def after_update(event)
Rails.logger.debug "EventObserver::after_update #{event.class.name}.#{event.id}"
channels = Channel.being_used
inc=channels.reject {|c| !c.current_source.events.include?(event) }
inc.each do |c|
expire_action("channel_tickers/#{c.id}.js")
expire_action("channel_events/#{c.id}.js")
Rails.logger.debug "expired stuff for channel #{c.id}"
end
end
end
에 관찰자가 있지만, 그것은 아무것도 만료되지 않습니다. 로그에 expire_action 호출이 없습니다.
내가 볼 수 있습니까 :
expired stuff for channel 63
는 그래서 그 코드를 치는 밖으로 폭격하지 않습니다.
컨트롤러에서 업데이트되지 않고 내부적으로 업데이트되므로 옵저버를 사용하고 싶습니다.
어디에서 업데이트 했습니까? –