我有一个 User 模型,它有一个 views 属性。
每次查看他们的个人资料时,我想将查看次数增加 1。
db 中的 views 属性默认为 0。
现在我遇到的问题如下:
第一次查看个人资料 @user = User.find(params[:user_id]) @user.increment!(:views) 这将设置视图等于 1。
第二次查看个人资料视图已更新为 3。
似乎在随机时间视图会更新 2 而不是 1。
我有一个 User 模型,它有一个 views 属性。
每次查看他们的个人资料时,我想将查看次数增加 1。
db 中的 views 属性默认为 0。
现在我遇到的问题如下:
第一次查看个人资料 @user = User.find(params[:user_id]) @user.increment!(:views) 这将设置视图等于 1。
第二次查看个人资料视图已更新为 3。
似乎在随机时间视图会更新 2 而不是 1。
这不是维护配置文件视图的好/安全方式。如果有很多人观看,您可能会有比赛条件。
有一种高度复杂的宝石叫做“印象派”。(https://github.com/charlotte-ruby/impressionist)。用它。您将可以访问许多功能,例如根据用户、IP 或会话哈希等获取独特的个人资料视图。