対応関係

オブザーバ ---> モデル <===> コントローラ <===> ビュー <--- ヘルパー
スイーパ                           |              |
                              アクション      テンプレート

コントローラは、

  • ヘルパーをビューにincludeする (helper)
  • オブザーバをモデルに織り込む (observer)
  • スイーパをアクティブにする (cache_sweeper)
  • コントローラとビューのやりとりは、インスタンス変数で行う

※メモ

オブザーバをアクティブにするためにconfig/environment.rbで、

config.active_record.observers = :foo_bar, :hoge_hoge

とした場合、Rails 1.1.6 だと挙動がおかしい気がする。

class ParticularController < ApplicationController
  observer :foo_bar
end

だと、とりあえずうまく動く。