diff options
author | Pratik Naik <pratiknaik@gmail.com> | 2008-07-02 03:17:33 +0100 |
---|---|---|
committer | Pratik Naik <pratiknaik@gmail.com> | 2008-07-02 03:17:33 +0100 |
commit | 474d42538269a141687c7c66bef6575b4682b15d (patch) | |
tree | 42aebc676eeb1f6e0035aa1595fb1bed0dea01ca /activerecord/lib/active_record | |
parent | 7378e237342443addb1691795ac9457250b6db1e (diff) | |
download | rails-474d42538269a141687c7c66bef6575b4682b15d.tar.gz rails-474d42538269a141687c7c66bef6575b4682b15d.tar.bz2 rails-474d42538269a141687c7c66bef6575b4682b15d.zip |
Ensure AssociationCollection#size considers all unsaved record. [#305 state:resolved] [sds]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/associations/association_collection.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/associations/association_collection.rb b/activerecord/lib/active_record/associations/association_collection.rb index 52d2a9864e..bbd8af7e76 100644 --- a/activerecord/lib/active_record/associations/association_collection.rb +++ b/activerecord/lib/active_record/associations/association_collection.rb @@ -187,7 +187,7 @@ module ActiveRecord if @owner.new_record? || (loaded? && !@reflection.options[:uniq]) @target.size elsif !loaded? && !@reflection.options[:uniq] && @target.is_a?(Array) - unsaved_records = Array(@target.detect { |r| r.new_record? }) + unsaved_records = @target.select { |r| r.new_record? } unsaved_records.size + count_records else count_records |