如何在 Rails 中实现单个页面的当前访问者计数?
例如,一个特性网站有一个特性列表和一个备注:- 对于每个单独的列表,“目前有 6 人正在查看此属性”。
我知道印象派 gem,它能够为每个 Controller 记录独特的印象。只是想知道是否有比查询更好的方法
impressions.where("created_at <= ?", 5.minutes.ago).count
对于数组中的每个对象。
最佳答案
在你被否决之前,我会给你一个如何去做的想法
记录访客属于analytics的领域,其中 Google Analytics 最受欢迎和最受认可
分析
分析系统由 3 个部分组成:
- 捕捉
- 正在处理
- 展示
捕获和处理数据的过程基本上是相同的——在您的网站上放置一个 JS 小部件,以将查询发送到服务器并附加用户数据。处理数据将其放入您的数据库
显示数据
对很多人来说不同之处在于他们捕获的数据的显示
- Google Analytics 在其仪表板中显示数据
- Ebay 将数据显示为
x 人在过去一小时内购买
- 您想显示查看某个项目的人数
做到这一点的方法是将数据的处理方面硬编码到您的应用中
我无法解释执行此操作的确切方法,因为它高度依赖于您的堆栈,但这是执行此操作的一般方法
关于ruby-on-rails - Rails 当前访客数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20538347/