diff options
author | Yves Senn <yves.senn@gmail.com> | 2016-11-21 17:19:23 +0100 |
---|---|---|
committer | Yves Senn <yves.senn@gmail.com> | 2016-11-22 12:37:42 +0100 |
commit | 0e9957135d9057f91fe30af01d4a70e30ee8a6b3 (patch) | |
tree | 82bdbe113138eb08dfe3ab7e72ef5f353ef8e7ae /activerecord/CHANGELOG.md | |
parent | b89ddd421feed0a8dc45fb6a9a26dde34e3b7b9e (diff) | |
download | rails-0e9957135d9057f91fe30af01d4a70e30ee8a6b3.tar.gz rails-0e9957135d9057f91fe30af01d4a70e30ee8a6b3.tar.bz2 rails-0e9957135d9057f91fe30af01d4a70e30ee8a6b3.zip |
Introduce `reload_<association>` reader for singular associations.
This patch brings back the functionality of passing true to the
association proxy. The behavior was deprecated with #20888 and scheduled
for removal in Rails 5.1.
The deprecation mentioned that instead of `Article.category(true)` one
should use `article#reload.category`. Unfortunately the alternative does
not expose the same behavior as passing true to the reader
did. Specifically reloading the parent record throws unsaved changes and
other caches away. Passing true only affected the association.
This is problematic and there is no easy workaround. I propose to bring
back the old functionality by introducing this new reader method for
singular associations.
Diffstat (limited to 'activerecord/CHANGELOG.md')
-rw-r--r-- | activerecord/CHANGELOG.md | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/activerecord/CHANGELOG.md b/activerecord/CHANGELOG.md index b8b3e98f25..d0cc808133 100644 --- a/activerecord/CHANGELOG.md +++ b/activerecord/CHANGELOG.md @@ -1,3 +1,17 @@ +* Introduce `Model#reload_<association>` to bring back the behavior + of `Article.category(true)` where `category` is a singular + association. + + The force reloading of the association reader was deprecated in + #20888. Unfortunately the suggested alternative of + `article.reload.category` does not expose the same behavior. + + This patch adds a reader method with the prefix `reload_` for + singular associations. This method has the same semantics as + passing true to the association reader used to have. + + *Yves Senn* + * Make sure eager loading `ActiveRecord::Associations` also loads constants defined in `ActiveRecord::Associations::Preloader`. |