清除Rails应用程序中的会话数据

时间:2010-06-29 18:44:21

标签: ruby-on-rails session

我觉得奇怪的是,rails没有清除旧会话(文件,ActiveRecord或其他)的标准方法。有一个rake任务删除所有这些,这不是我需要的(只需要删除超过X周的会话)。

我可以编写一个3行脚本,并且可以很容易地定期运行它,但是想先检查一下我是否错过了最佳实践。

1 个答案:

答案 0 :(得分:1)

我在Amateur geek上找到了这个,虽然这可能是你在上面提到的:

class SessionCleaner
  def self.remove_stale_sessions
    CGI::Session::ActiveRecordStore::Session.
      destroy_all( ['updated_at <?', 1.hour.ago] ) 
  end
end