aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations/join_dependency.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2013-10-03 15:08:33 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2013-10-03 15:08:33 -0700
commit6141d0c4b84a765464852df1dfa06995bba22023 (patch)
treeea3b01f7e67dc257f885a839046666263dac11a2 /activerecord/lib/active_record/associations/join_dependency.rb
parent4c0f023ea3d3361df21d020597cba049ee7da6aa (diff)
downloadrails-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.rb6
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