diff options
author | Jon Leighton <j@jonathanleighton.com> | 2011-12-18 23:35:25 +0000 |
---|---|---|
committer | Jon Leighton <j@jonathanleighton.com> | 2011-12-24 11:08:15 +0000 |
commit | 6af7192af59602e1cbb341b8bf3452afb344eff2 (patch) | |
tree | 7e02050aedff7fbd8cb916b20b9a27f71a0a559f /activerecord/lib/active_record/core.rb | |
parent | b2c9ce341a1c907041f55461aefebb0321280cb5 (diff) | |
download | rails-6af7192af59602e1cbb341b8bf3452afb344eff2.tar.gz rails-6af7192af59602e1cbb341b8bf3452afb344eff2.tar.bz2 rails-6af7192af59602e1cbb341b8bf3452afb344eff2.zip |
I herd you like modules.
Diffstat (limited to 'activerecord/lib/active_record/core.rb')
-rw-r--r-- | activerecord/lib/active_record/core.rb | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/core.rb b/activerecord/lib/active_record/core.rb index dfd239a998..84ac6dd93d 100644 --- a/activerecord/lib/active_record/core.rb +++ b/activerecord/lib/active_record/core.rb @@ -65,6 +65,11 @@ module ActiveRecord # Specify whether or not to use timestamps for migration versions cattr_accessor :timestamped_migrations , :instance_writer => false self.timestamped_migrations = true + + ## + # :singleton-method: + # The connection handler + class_attribute :connection_handler, :instance_writer => false end module ClassMethods @@ -111,7 +116,13 @@ module ActiveRecord if self == ActiveRecord::Base ActiveRecord::Base else - connection_handler.connection_pools[name] ? self : superclass.arel_engine + if connection_handler.connection_pools[name] + self + elsif superclass < ActiveRecord::Model + superclass.arel_engine + else + ActiveRecord::Base + end end end end |