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/associations/join_dependency.rb | |
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/associations/join_dependency.rb')
-rw-r--r-- | activerecord/lib/active_record/associations/join_dependency.rb | 6 |
1 files changed, 6 insertions, 0 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 |