instance method
update
Ruby on Rails 3.2.22.5
Since v3.0.20 Last seen in v4.2.9Signature
update(id, attributes)
Updates an object (or multiple objects) and saves it to the database, if validations pass. The resulting object is returned whether the object was saved successfully to the database or not.
Parameters
-
id- This should be the id or an array of ids to be updated. -
attributes- This should be a hash of attributes or an array of hashes.
Examples
# Updates one record
Person.update(15, :user_name => 'Samuel', :group => 'expert')
# Updates multiple records
people = { 1 => { "first_name" => "David" }, 2 => { "first_name" => "Jeremy" } }
Person.update(people.keys, people.values)
Parameters
-
idreq -
attributesreq
Source
# File activerecord/lib/active_record/relation.rb, line 313
def update(id, attributes)
if id.is_a?(Array)
id.each.with_index.map {|one_id, idx| update(one_id, attributes[idx])}
else
object = find(id)
object.update_attributes(attributes)
object
end
end
Defined in activerecord/lib/active_record/relation.rb line 313
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::Relation