diff options
Diffstat (limited to 'activerecord')
-rwxr-xr-x | activerecord/lib/active_record/base.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index d73d424339..cf7ae97452 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -2249,8 +2249,10 @@ module ActiveRecord #:nodoc: create_or_update end - # Attempts to save the record, but instead of just returning false if it couldn't happen, it raises a - # RecordNotSaved exception + # Attempts to save the record, but instead of just returning false if it couldn't happen, it raises an + # ActiveRecord::RecordNotSaved exception. However, if the callback chain raises ActiveRecord::Rollback + # to rollback the transaction that wraps <tt>save!</tt> no exception is raised, <tt>save!</tt> just + # returns +nil+. See ActiveRecord::Callbacks for further details. def save! create_or_update || raise(RecordNotSaved) end |