diff options
Diffstat (limited to 'activerecord/lib/active_record/associations/collection_association.rb')
-rw-r--r-- | activerecord/lib/active_record/associations/collection_association.rb | 3 |
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 9fa8b5d469..0437a79b84 100644 --- a/activerecord/lib/active_record/associations/collection_association.rb +++ b/activerecord/lib/active_record/associations/collection_association.rb @@ -297,6 +297,8 @@ module ActiveRecord target << record end + set_inverse_instance(record) + yield(record) if block_given? rescue if index @@ -309,7 +311,6 @@ module ActiveRecord end callback(:after_add, record) unless skip_callbacks - set_inverse_instance(record) record end |