diff options
-rw-r--r-- | activerecord/lib/active_record/attribute_assignment.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/attribute_assignment.rb b/activerecord/lib/active_record/attribute_assignment.rb index 30fa2c8ba5..5007e319da 100644 --- a/activerecord/lib/active_record/attribute_assignment.rb +++ b/activerecord/lib/active_record/attribute_assignment.rb @@ -11,6 +11,16 @@ module ActiveRecord # If the passed hash responds to <tt>permitted?</tt> method and the return value # of this method is +false+ an <tt>ActiveModel::ForbiddenAttributesError</tt> # exception is raised. + # + # Example: + # + # cat = Cat.new(name: "Gorby", status: "yawning") + # cat.attributes # => {"name" => "Gorby", "status" => "yawning"} + # cat.assign_attributes(status: "sleeping") + # cat.attributes # => {"name" => "Gorby", "status" => "sleeping"} + # + # New attributes will be persisted to database when object is saved. + # <tt>attributes =</tt> is an alias. def assign_attributes(new_attributes) if !new_attributes.respond_to?(:stringify_keys) raise ArgumentError, "When assigning attributes, you must pass a hash as an argument." |