aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/session/active_record_store.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/session/active_record_store.rb')
-rw-r--r--actionpack/lib/action_controller/session/active_record_store.rb11
1 files changed, 7 insertions, 4 deletions
diff --git a/actionpack/lib/action_controller/session/active_record_store.rb b/actionpack/lib/action_controller/session/active_record_store.rb
index 60fd295fe8..a481616615 100644
--- a/actionpack/lib/action_controller/session/active_record_store.rb
+++ b/actionpack/lib/action_controller/session/active_record_store.rb
@@ -35,7 +35,6 @@ class CGI
class ActiveRecordStore
# The default Active Record class.
class Session < ActiveRecord::Base
- self.table_name = 'sessions'
before_save :marshal_data!
before_update :data_changed?
@@ -251,12 +250,16 @@ class CGI
# Restore session state. The session model handles unmarshaling.
def restore
- @session.data if @session
+ if @session
+ @session.data
+ end
end
# Save session store.
def update
- @session.save! if @session
+ if @session
+ ActiveRecord::Base.silence { @session.save! }
+ end
end
# Save and close the session store.
@@ -270,7 +273,7 @@ class CGI
# Delete and close the session store.
def delete
if @session
- @session.destroy rescue nil
+ ActiveRecord::Base.silence { @session.destroy }
@session = nil
end
end