0

我有一个 User 模型,它有一个 views 属性。

每次查看他们的个人资料时,我想将查看次数增加 1。

db 中的 views 属性默认为 0。

现在我遇到的问题如下:

  • 第一次查看个人资料 @user = User.find(params[:user_id]) @user.increment!(:views) 这将设置视图等于 1。

  • 第二次查看个人资料视图已更新为 3。

似乎在随机时间视图会更新 2 而不是 1。

4

1 回答 1

0

这不是维护配置文件视图的好/安全方式。如果有很多人观看,您可能会有比赛条件。

有一种高度复杂的宝石叫做“印象派”。(https://github.com/charlotte-ruby/impressionist)。用它。您将可以访问许多功能,例如根据用户、IP 或会话哈希等获取独特的个人资料视图。

于 2013-08-03T19:21:30.863 回答