2

有没有办法确定有多少用户使用 devise 主动登录到 rails 应用程序?

导轨 3.1

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

with : 数据库可验证

我正在寻找专门的红宝石代码。

4

2 回答 2

3

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

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

然后确定登录用户就像确定他们的最后一次页面加载需要多长时间才能算作登录一样简单,然后根据此在您的视图表上进行选择。就像是

MyPageView.select(["DISTINCT user WHERE created_at > ?", my_threshold_time]) 会给你不同的用户。

于 2012-08-13T15:47:25.457 回答
0

我写了一篇关于这个的博客文章。我们不得不在工作中这样做,而这个解决方案似乎符合我们的需求。

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

于 2016-03-19T15:43:29.277 回答