原创作者: hideto
阅读:1340次
评论:0条
更新时间:2011-05-26
session数据保存在Rails程序根目录下的tmp/sessions目录
Rails的sessions默认以Marshal Ruby对象保存
有时候程序由于session数据不对而出错,我们可以写一段脚本来检查session数据:
DumpingSessionContentsDuringDevelopment/script/dump_sessions
我们可以运行ruby script/dump_sessions来查看session数据
我们还可以写一个rake task来从ActiveRecord session store显示sessions数据:
Rails的sessions默认以Marshal Ruby对象保存
有时候程序由于session数据不对而出错,我们可以写一段脚本来检查session数据:
DumpingSessionContentsDuringDevelopment/script/dump_sessions
#!/usr/bin/env ruby require 'pp' require File.dirname(__FILE__) + '/../config/environment' Dir['app/models/**/*rb'].each{|f| require f} pp Dir[File.dirname(__FILE__) + '/../tmp/sessions/ruby_sess*']collect {|file| [file, Marshal.load(File.read(file))] }
我们可以运行ruby script/dump_sessions来查看session数据
我们还可以写一个rake task来从ActiveRecord session store显示sessions数据:
namespace :db do namespace :sessions do desc "Dumps the database-backed session data" task :dump => [:environment] do |t| require 'pp' Dir['app/models/**/*rb'].each{|f| require f} sessions = CGI::Session::ActiveRecordStore::Session.find_all sessions.each do |session| pp session.data end end end
评论 共 0 条 请登录后发表评论