update(attribute_names = @attributes.keys)
private
Updates the associated record with values matching those of the instance
attributes. Returns the number of affected rows.
# File activerecord/lib/active_record/persistence.rb, line 256
def update(attribute_names = @attributes.keys)
attributes_with_values = arel_attributes_values(false, false, attribute_names)
return 0 if attributes_with_values.empty?
self.class.unscoped.where(self.class.arel_table[self.class.primary_key].eq(id)).arel.update(attributes_with_values)
end