module ActiveRecord::MassAssignmentSecurity::Persistence
Active Record Persistence
¶ ↑
Public Instance Methods
update(attributes, options = {})
click to toggle source
Updates the attributes of the model from the passed-in hash and saves the record, all wrapped in a transaction. If the object is invalid, the saving will fail and false will be returned.
When updating model attributes, mass-assignment security protection is respected. If no :as
option is supplied then the :default
role will be used. If you want to bypass the forbidden attributes protection then you can do so using the :without_protection
option.
# File lib/active_record/mass_assignment_security/persistence.rb, line 60 def update(attributes, options = {}) # The following transaction covers any possible database side-effects of the # attributes assignment. For example, setting the IDs of a child collection. with_transaction_returning_status do assign_attributes(attributes, options) save end end
Also aliased as: update_attributes
update!(attributes, options = {})
click to toggle source
Updates its receiver just like update_attributes
but calls save!
instead of save
, so an exception is raised if the record is invalid.
# File lib/active_record/mass_assignment_security/persistence.rb, line 72 def update!(attributes, options = {}) # The following transaction covers any possible database side-effects of the # attributes assignment. For example, setting the IDs of a child collection. with_transaction_returning_status do assign_attributes(attributes, options) save! end end
Also aliased as: update_attributes!