rails で Controller ではなく module で before_filter する場合

http://doruby.kbmj.com/zenpou_on_rails/20080801/ruby_on_rails_ActionController_before_filter_
にある通り、


module NantokaModule
def self.included(base)
base.class_eval{
before_filter :filter_name
}
end
end
と書けばOK。
self.included は自分がincludeされた時に呼ばれるメソッドで、baseはincludeした側のクラスが入っています。
でevalなので、includeした側のクラスに定義が書かれたように見せるってわけ。
賢いなー