aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations/collection_association.rb
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2016-11-07 00:01:53 +0900
committerRyuta Kamizono <kamipo@gmail.com>2016-11-13 06:19:28 +0900
commit0ec967aa6655d62c92f72acb8d556a5b3f70762d (patch)
tree100e287492d9ebb44b47f9b6cec7aaca72209774 /activerecord/lib/active_record/associations/collection_association.rb
parentee7556cb08382f311bd40eec0e377aaa878c42e8 (diff)
downloadrails-0ec967aa6655d62c92f72acb8d556a5b3f70762d.tar.gz
rails-0ec967aa6655d62c92f72acb8d556a5b3f70762d.tar.bz2
rails-0ec967aa6655d62c92f72acb8d556a5b3f70762d.zip
Respect new records for `CollectionProxy#uniq`
Currently if `CollectionProxy` has more than one new record, `CollectionProxy#uniq` result is incorrect. And `CollectionProxy#uniq` was aliased to `distinct` in a1bb6c8b06db. But the `uniq` method and the `SELECT DISTINCT` method are different methods. The doc in `CollectionProxy` is for the `SELECT DISTINCT` method, not for the `uniq` method. Therefore, reverting the alias in `CollectionProxy` to fix the inconsistency and to have the both methods.
Diffstat (limited to 'activerecord/lib/active_record/associations/collection_association.rb')
-rw-r--r--activerecord/lib/active_record/associations/collection_association.rb7
1 files changed, 0 insertions, 7 deletions
diff --git a/activerecord/lib/active_record/associations/collection_association.rb b/activerecord/lib/active_record/associations/collection_association.rb
index f8aac895d7..7cd25ea524 100644
--- a/activerecord/lib/active_record/associations/collection_association.rb
+++ b/activerecord/lib/active_record/associations/collection_association.rb
@@ -246,13 +246,6 @@ module ActiveRecord
end
end
- def distinct
- seen = {}
- load_target.find_all do |record|
- seen[record.id] = true unless seen.key?(record.id)
- end
- end
-
# Replace this collection with +other_array+. This will perform a diff
# and delete/add only records that have changed.
def replace(other_array)