4

有什么方法可以获取 Rails 中所有活动会话的列表?我有内存缓存会话列表,我想查看用户 ID、源 ip、时间戳、持续时间等以用于基本管理目的。

4

1 回答 1

2

为了扩展我的评论,我正在做与您想做的类似的事情。我正在使用 authlogic,但我想你可以用其他身份验证包做一些等效的事情。

我正在使用 authlogic 的自动注销功能,并将其设置为在 120 分钟后注销人员。知道了这一点,生成一个列表很简单。我只是执行以下操作:

<% User.find(:all, :conditions => ["last_request_at > ?", 120.minutes.ago]).each do |user| %>
  <li>
    <%= link_to user.name, admin_person_path(user.bio) %>
    (<%= mail_to user.email %>) <%= time_ago_in_words(user.last_request_at) %> ago
  </li>
<% end %>

你可以看到我只列出了他们的姓名、电子邮件以及他们最后一次提出请求的时间。添加 last_login_ip、current_login_at 等将是微不足道的。

希望这可以帮助。

于 2012-04-22T04:29:04.490 回答