From 629b8af2b0e143b18aa4206beb6006b9f9898788 Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Tue, 10 Oct 2006 19:34:25 +0000 Subject: Wrap save! in a transaction. Closes #6324. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5281 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activerecord/lib/active_record/transactions.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'activerecord/lib/active_record/transactions.rb') diff --git a/activerecord/lib/active_record/transactions.rb b/activerecord/lib/active_record/transactions.rb index 5e82fd2d8e..84da1e91d6 100644 --- a/activerecord/lib/active_record/transactions.rb +++ b/activerecord/lib/active_record/transactions.rb @@ -11,7 +11,7 @@ module ActiveRecord base.extend(ClassMethods) base.class_eval do - [:destroy, :save].each do |method| + [:destroy, :save, :save!].each do |method| alias_method_chain method, :transactions end end @@ -115,9 +115,13 @@ module ActiveRecord def destroy_with_transactions #:nodoc: transaction { destroy_without_transactions } end - + def save_with_transactions(perform_validation = true) #:nodoc: transaction { save_without_transactions(perform_validation) } end + + def save_with_transactions! #:nodoc: + transaction { save_without_transactions! } + end end end -- cgit v1.2.3