6

这对我来说一直是个问题,因为 rails 没有像 java 框架那样的会话跟踪机制,你使用什么方法来跟踪当前登录你网站的人?我使用一种简单的方法,每次用户单击站点上的某个位置时,将 last_visited 字段设置为当前时间,然后检查在(比如说)过去 10 分钟内更新了该字段的用户。除了这个,还有什么方法?

4

1 回答 1

5

如果您将active_record_store用于您的会话,您可以尝试以下操作:

sessions = CGI::Session::ActiveRecordStore::Session.find(:all, :conditions => ["updated_at >= ?", 15.minutes.ago], :order => "created_at ASC")
sessions.each do |session|
  if session.data[:user]
    online_users << User.find(session.data[:user])
  end
end
于 2009-02-25T17:50:36.090 回答