有没有办法返回当前登录的设备用户数?

时间:2012-08-13 15:13:54

标签: ruby-on-rails ruby devise

有没有办法弄清楚有多少用户使用设计主动登录rails应用程序?

Rails 3.1

宝石'设计','〜> 1.4' 宝石'dm-devise','〜> 1.5'

with:Database Authenticatable

我正在寻找ruby代码。

2 个答案:

答案 0 :(得分:3)

由于所有与登录相关的信息都是在会话中处理的,因此没有简单的方法。我建议在ApplicationController中做一些事情来管理这些信息。

我们在许多应用程序中使用before_filter来跟踪有关每个页面请求的非常具体的信息。您可以执行类似的操作来跟踪他们点击的页面,点击时间以及他们是谁。

然后确定登录用户就像确定他们的最后一页加载需要多长时间才能让他们按登录计算一样简单,然后在您的基于此的视图表上选择。像

这样的东西

MyPageView.select([“DISTINCT用户WHERE created_at>?”,my_threshold_time])会为您提供不同的用户。

答案 1 :(得分:0)

我写了blog post这个。我们必须在工作中这样做,这个解决方案似乎符合我们的需求。

您应该将last_request_at和logged_in添加到您的用户模型中。可以从请求的user_session信息中获取last_request_at。应在sign_in / sign_out上设置Logged_in。