aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2014-04-11 15:47:36 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2014-04-11 15:48:11 -0300
commitc8a70660d46343d05c954c8a9b830166aa7335e9 (patch)
treea1910daaec4c5be938d71d16ccf508bab5bd8813 /activerecord/lib/active_record
parent7bb8fd2f641c3416522e647ed32a3142ccc1e01b (diff)
parent8d11fbf679e17c277ddf5bf52311f0e824ebae46 (diff)
downloadrails-c8a70660d46343d05c954c8a9b830166aa7335e9.tar.gz
rails-c8a70660d46343d05c954c8a9b830166aa7335e9.tar.bz2
rails-c8a70660d46343d05c954c8a9b830166aa7335e9.zip
Merge branch 'rm-fix-13648'
Includes https://github.com/rails/rails/pull/14711 and some cleanup commits. Fixes #13648
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r--activerecord/lib/active_record/association_relation.rb8
-rw-r--r--activerecord/lib/active_record/relation.rb5
2 files changed, 10 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/association_relation.rb b/activerecord/lib/active_record/association_relation.rb
index 20516bba0c..ef9650d482 100644
--- a/activerecord/lib/active_record/association_relation.rb
+++ b/activerecord/lib/active_record/association_relation.rb
@@ -9,6 +9,14 @@ module ActiveRecord
@association
end
+ def size
+ @association.size
+ end
+
+ def empty?
+ @association.empty?
+ end
+
private
def exec_queries
diff --git a/activerecord/lib/active_record/relation.rb b/activerecord/lib/active_record/relation.rb
index 787f55e2e7..d1764a2bb2 100644
--- a/activerecord/lib/active_record/relation.rb
+++ b/activerecord/lib/active_record/relation.rb
@@ -238,7 +238,7 @@ module ActiveRecord
# Returns size of the records.
def size
- loaded? ? @records.length : count
+ loaded? ? @records.length : count(:all)
end
# Returns true if there are no records.
@@ -248,8 +248,7 @@ module ActiveRecord
if limit_value == 0
true
else
- # FIXME: This count is not compatible with #select('authors.*') or other select narrows
- c = count
+ c = count(:all)
c.respond_to?(:zero?) ? c.zero? : c.empty?
end
end