diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2013-10-03 15:08:33 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2013-10-03 15:08:33 -0700 |
commit | 6141d0c4b84a765464852df1dfa06995bba22023 (patch) | |
tree | ea3b01f7e67dc257f885a839046666263dac11a2 /activerecord/lib/active_record | |
parent | 4c0f023ea3d3361df21d020597cba049ee7da6aa (diff) | |
download | rails-6141d0c4b84a765464852df1dfa06995bba22023.tar.gz rails-6141d0c4b84a765464852df1dfa06995bba22023.tar.bz2 rails-6141d0c4b84a765464852df1dfa06995bba22023.zip |
simplify the JoinAssociation constructor, check validity *before*
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/associations/join_dependency.rb | 6 | ||||
-rw-r--r-- | activerecord/lib/active_record/associations/join_dependency/join_association.rb | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/activerecord/lib/active_record/associations/join_dependency.rb b/activerecord/lib/active_record/associations/join_dependency.rb index 7d6d25eeb7..00fe249837 100644 --- a/activerecord/lib/active_record/associations/join_dependency.rb +++ b/activerecord/lib/active_record/associations/join_dependency.rb @@ -174,6 +174,12 @@ module ActiveRecord end def build_join_association(reflection, parent) + reflection.check_validity! + + if reflection.options[:polymorphic] + raise EagerLoadPolymorphicError.new(reflection) + end + JoinAssociation.new(reflection, self, parent) end diff --git a/activerecord/lib/active_record/associations/join_dependency/join_association.rb b/activerecord/lib/active_record/associations/join_dependency/join_association.rb index d97c1972f7..3bc7f7ad50 100644 --- a/activerecord/lib/active_record/associations/join_dependency/join_association.rb +++ b/activerecord/lib/active_record/associations/join_dependency/join_association.rb @@ -30,12 +30,6 @@ module ActiveRecord delegate :alias_tracker, :to => :join_dependency def initialize(reflection, join_dependency, parent) - reflection.check_validity! - - if reflection.options[:polymorphic] - raise EagerLoadPolymorphicError.new(reflection) - end - super(reflection.klass) @reflection = reflection |