From 1c94868033c631dcb44d705f70433a64d48e0938 Mon Sep 17 00:00:00 2001 From: Vijay Dev Date: Wed, 23 May 2012 23:12:35 +0530 Subject: [PATCH] copy edits in collection proxy docs [ci skip] --- .../associations/collection_proxy.rb | 43 ++++++++----------- 1 file changed, 18 insertions(+), 25 deletions(-) diff --git a/activerecord/lib/active_record/associations/collection_proxy.rb b/activerecord/lib/active_record/associations/collection_proxy.rb index 6fd5c466f66cc..100fb38decbe0 100644 --- a/activerecord/lib/active_record/associations/collection_proxy.rb +++ b/activerecord/lib/active_record/associations/collection_proxy.rb @@ -92,6 +92,10 @@ class CollectionProxy < Relation # # ] # # person.pets.select(:name) { |pet| pet.name =~ /oo/ } + # # => [ + # # #, + # # # + # # ] ## # :method: find @@ -113,7 +117,7 @@ class CollectionProxy < Relation # # #, # # # # # ] - # + # # person.pets.find(1) # => # # person.pets.find(4) # => ActiveRecord::RecordNotFound: Couldn't find Pet with id=4 # @@ -231,7 +235,7 @@ class CollectionProxy < Relation # # Returns a new object of the collection type that has been instantiated with # attributes, linked to this object and that has already been saved (if it - # passed the validations). + # passes the validations). # # class Person # has_many :pets @@ -255,15 +259,14 @@ class CollectionProxy < Relation # # #, # # # # # ] - + ## # :method: create! # # :call-seq: # create!(attributes = {}, options = {}, &block) # - # Like +create+, except that if the record is invalid will - # raise an exception. + # Like +create+, except that if the record is invalid, raises an exception. # # class Person # has_many :pets @@ -340,8 +343,8 @@ class CollectionProxy < Relation ## # :method: delete_all # - # Deletes all the records from the collection. For +has_many+ it will do the - # deletion according to the strategy specified by the :dependent + # Deletes all the records from the collection. For +has_many+ asssociations, + # the deletion is done according to the strategy specified by the :dependent # option. Returns an array with the deleted records. # # If no :dependent option is given, then it will follow the @@ -501,7 +504,7 @@ class CollectionProxy < Relation # You can pass +Fixnum+ or +String+ values, it finds the records # responding to the +id+ and then deletes them from the database. # - # person.pets.size # => 3 + # person.pets.size # => 3 # person.pets # # => [ # # #, @@ -529,7 +532,7 @@ class CollectionProxy < Relation # person.pets # => [] # # Pet.find(4, 5, 6) # => ActiveRecord::RecordNotFound: Couldn't find all Pets with IDs (4, 5, 6) - + ## # :method: size # @@ -541,11 +544,7 @@ class CollectionProxy < Relation # end # # person.pets.size # => 3 - # # Executes: - # # - # # SELECT COUNT(*) - # # FROM "pets" - # # WHERE "pets"."person_id" = 1 + # # executes something like SELECT COUNT(*) FROM "pets" WHERE "pets"."person_id" = 1 # # person.pets # This will execute a SELECT * FROM query # # => [ @@ -562,24 +561,18 @@ class CollectionProxy < Relation # :method: length # # Returns the size of the collection calling +size+ on the target. - # If the collection has been already loaded +length+ and +size+ are - # equivalent. If not and you are going to need the records anyway this - # method will take one less query because loads the collection. Otherwise - # +size+ is more efficient. + # If the collection has been already loaded, +length+ and +size+ are + # equivalent. # # class Person < ActiveRecord::Base # has_many :pets # end # # person.pets.length # => 3 - # # Executes: - # # - # # SELECT "pets".* - # #  FROM "pets" - # # WHERE "pets"."person_id" = 1 + # # executes something like SELECT "pets".* FROM "pets" WHERE "pets"."person_id" = 1 # # # Because the collection is loaded, you can - # # call the collection without execute a query: + # # call the collection with no additional queries: # person.pets # # => [ # # #, @@ -705,7 +698,7 @@ class CollectionProxy < Relation :sum, :count, :size, :length, :empty?, :any?, :many?, :include?, :to => :@association - + def initialize(association) @association = association super association.klass, association.klass.arel_table