aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations/collection_association.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib/active_record/associations/collection_association.rb')
-rw-r--r--activerecord/lib/active_record/associations/collection_association.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/associations/collection_association.rb b/activerecord/lib/active_record/associations/collection_association.rb
index 13f77c7d4d..f0cb108136 100644
--- a/activerecord/lib/active_record/associations/collection_association.rb
+++ b/activerecord/lib/active_record/associations/collection_association.rb
@@ -307,6 +307,8 @@ module ActiveRecord
target << record
end
+ set_inverse_instance(record)
+
yield(record) if block_given?
rescue
if index
@@ -319,7 +321,6 @@ module ActiveRecord
end
callback(:after_add, record) unless skip_callbacks
- set_inverse_instance(record)
record
end