diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2004-12-17 21:51:14 +0000 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2004-12-17 21:51:14 +0000 |
commit | 604a09462eb6ad9eec0bd8ba3f100f6c402945e3 (patch) | |
tree | dac634b993c8a20e69b145f8ab5d4ee4bdcf98cc | |
parent | 648b8fda54e5de742e4ffbb4bc8e6edf0b68a111 (diff) | |
download | rails-604a09462eb6ad9eec0bd8ba3f100f6c402945e3.tar.gz rails-604a09462eb6ad9eec0bd8ba3f100f6c402945e3.tar.bz2 rails-604a09462eb6ad9eec0bd8ba3f100f6c402945e3.zip |
Added Base#update_attributes that'll accept a hash of attributes and save the record (returning true if it passed validation, false otherwise). Added a return value for Base#update_attribute, so that you get to know whether the save was successful or if it failed validation.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@207 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
-rw-r--r-- | activerecord/CHANGELOG | 11 | ||||
-rwxr-xr-x | activerecord/lib/active_record/base.rb | 8 |
2 files changed, 18 insertions, 1 deletions
diff --git a/activerecord/CHANGELOG b/activerecord/CHANGELOG index 7c032d1a9d..91c6a683b1 100644 --- a/activerecord/CHANGELOG +++ b/activerecord/CHANGELOG @@ -1,5 +1,16 @@ *SVN* +* Added Base#update_attributes that'll accept a hash of attributes and save the record (returning true if it passed validation, false otherwise). + + Before: + person.attributes = @params["person"] + person.save + + Now: + person.update_attributes(@params["person"]) + +* Added a return value for Base#update_attribute, so that you get to know whether the save was successful or if it failed validation. + * Added Base.destroy and Base.delete to remove records without holding a reference to them first. diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index 2bcea9dd5d..81f9f84d21 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -789,7 +789,13 @@ module ActiveRecord #:nodoc: # Updates a single attribute and saves the record. This is especially useful for boolean flags on existing records. def update_attribute(name, value) self[name] = value - save + return save + end + + # Updates all the attributes in from the passed hash and saves the record. + def update_attributes(attributes) + attributes = attributes + return save end # Returns the value of attribute identified by <tt>attr_name</tt> after it has been type cast (for example, |