diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2005-01-10 16:06:04 +0000 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2005-01-10 16:06:04 +0000 |
commit | d5de6660561cf544a33d7d678d693a7b7139f61f (patch) | |
tree | 35e9f3b29d91ee91b1e9f2f16d5c723ba11cf4be /activerecord | |
parent | d239ac40fa28630a3e683caf28d71bdbfb921ba0 (diff) | |
download | rails-d5de6660561cf544a33d7d678d693a7b7139f61f.tar.gz rails-d5de6660561cf544a33d7d678d693a7b7139f61f.tar.bz2 rails-d5de6660561cf544a33d7d678d693a7b7139f61f.zip |
Added that Observers can use the observes class method instead of overwriting self.observed_class()
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@367 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord')
-rw-r--r-- | activerecord/lib/active_record/observer.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/observer.rb b/activerecord/lib/active_record/observer.rb index ceba78b043..f08374596d 100644 --- a/activerecord/lib/active_record/observer.rb +++ b/activerecord/lib/active_record/observer.rb @@ -43,7 +43,11 @@ module ActiveRecord # The observer can implement callback methods for each of the methods described in the Callbacks module. class Observer include Singleton - + + def self.observe(*models) + define_method(:observed_class) { models } + end + def initialize [ observed_class ].flatten.each do |klass| klass.add_observer(self) |