diff options
author | Rafael França <rafaelmfranca@gmail.com> | 2016-07-28 10:36:50 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-07-28 10:36:50 -0300 |
commit | 519801db08a2eb0ea579ceed64f3be04a873acc9 (patch) | |
tree | 86d12ddfcc4fa6b2e2e7db245e7e6ebfdfc0ac75 | |
parent | fb30df9c10372b1667dabac2fffe2cff25302626 (diff) | |
parent | ceee776b5ddf3db849bdf170be15de5a86eb28d5 (diff) | |
download | rails-519801db08a2eb0ea579ceed64f3be04a873acc9.tar.gz rails-519801db08a2eb0ea579ceed64f3be04a873acc9.tar.bz2 rails-519801db08a2eb0ea579ceed64f3be04a873acc9.zip |
Merge pull request #25940 from kamipo/fix_collection_proxy_load
Fix to `CollectionProxy#load` does `load_target`
-rw-r--r-- | activerecord/lib/active_record/associations/collection_proxy.rb | 6 | ||||
-rw-r--r-- | activerecord/test/cases/associations_test.rb | 8 |
2 files changed, 14 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/associations/collection_proxy.rb b/activerecord/lib/active_record/associations/collection_proxy.rb index db3037d8f9..98250a7ab8 100644 --- a/activerecord/lib/active_record/associations/collection_proxy.rb +++ b/activerecord/lib/active_record/associations/collection_proxy.rb @@ -1070,6 +1070,12 @@ module ActiveRecord proxy_association.reset_scope self end + + private + + def exec_queries + load_target + end end end end diff --git a/activerecord/test/cases/associations_test.rb b/activerecord/test/cases/associations_test.rb index 5fb7f191ed..c22efaa227 100644 --- a/activerecord/test/cases/associations_test.rb +++ b/activerecord/test/cases/associations_test.rb @@ -181,6 +181,14 @@ class AssociationProxyTest < ActiveRecord::TestCase assert !david.projects.loaded? end + def test_load_does_load_target + david = developers(:david) + + assert !david.projects.loaded? + david.projects.load + assert david.projects.loaded? + end + def test_inspect_does_not_reload_a_not_yet_loaded_target andreas = Developer.new :name => 'Andreas', :log => 'new developer added' assert !andreas.audit_logs.loaded? |