diff options
author | Eileen M. Uchitelle <eileencodes@users.noreply.github.com> | 2017-11-29 10:38:27 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-29 10:38:27 -0500 |
commit | 527ad1a32c2baf2a78c73104ac8aa52b39514f1f (patch) | |
tree | 2f5030f6947836b4000d2f254010c140920d9956 /activerecord/lib/active_record | |
parent | 5211c0dd8cc84d9458713ca55a4a8afe12f7df40 (diff) | |
parent | c10152daf948b5bdcf48cda06b9bbddee9e8c398 (diff) | |
download | rails-527ad1a32c2baf2a78c73104ac8aa52b39514f1f.tar.gz rails-527ad1a32c2baf2a78c73104ac8aa52b39514f1f.tar.bz2 rails-527ad1a32c2baf2a78c73104ac8aa52b39514f1f.zip |
Merge pull request #31214 from chopraanmol1/bug_fix_has_one_inverse_owner_reload_from_validation
Inverse instance should not be reloaded during autosave if called in validation
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/autosave_association.rb | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/autosave_association.rb b/activerecord/lib/active_record/autosave_association.rb index 6974cf74f6..a1250c3835 100644 --- a/activerecord/lib/active_record/autosave_association.rb +++ b/activerecord/lib/active_record/autosave_association.rb @@ -436,6 +436,9 @@ module ActiveRecord if (autosave && record.changed_for_autosave?) || new_record? || record_changed?(reflection, record, key) unless reflection.through_reflection record[reflection.foreign_key] = key + if inverse_reflection = reflection.inverse_of + record.association(inverse_reflection.name).loaded! + end end saved = record.save(validate: !autosave) |