instance method
concat
Ruby on Rails 4.1.16
Since v4.0.13Signature
concat(*records)
Add one or more records to the collection by setting their foreign keys to the association’s primary key. Since << flattens its argument list and inserts each record, push and concat behave identically. Returns self so method calls may be chained.
class Person < ActiveRecord::Base
has_many :pets
end
person.pets.size # => 0
person.pets.concat(Pet.new(name: 'Fancy-Fancy'))
person.pets.concat(Pet.new(name: 'Spook'), Pet.new(name: 'Choo-Choo'))
person.pets.size # => 3
person.id # => 1
person.pets
# => [
# #<Pet id: 1, name: "Fancy-Fancy", person_id: 1>,
# #<Pet id: 2, name: "Spook", person_id: 1>,
# #<Pet id: 3, name: "Choo-Choo", person_id: 1>
# ]
person.pets.concat([Pet.new(name: 'Brain'), Pet.new(name: 'Benny')])
person.pets.size # => 5
Parameters
-
recordsrest
Source
# File activerecord/lib/active_record/associations/collection_proxy.rb, line 332
def concat(*records)
@association.concat(*records)
end
Defined in activerecord/lib/active_record/associations/collection_proxy.rb line 332
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::Associations::CollectionProxy