Ruby on rails Rails用户';看不见的页面';柜台
我有一个简单的rails应用程序,使用Desive进行身份验证。我感兴趣的是为每个用户创建一个计数器,当他们访问某些页面时进行更新 例如: 用户计数器=4 用户访问A页 用户计数器=3 用户再次访问页面A 用户计数器=3 用户访问B页 用户计数器=2Ruby on rails Rails用户';看不见的页面';柜台,ruby-on-rails,ruby,devise,counter,Ruby On Rails,Ruby,Devise,Counter,我有一个简单的rails应用程序,使用Desive进行身份验证。我感兴趣的是为每个用户创建一个计数器,当他们访问某些页面时进行更新 例如: 用户计数器=4 用户访问A页 用户计数器=3 用户再次访问页面A 用户计数器=3 用户访问B页 用户计数器=2 我在查看计数器缓存,它统计与用户关联的模型实例的数量,这是否在正确的路径上?任何帮助都将不胜感激。谢谢 给这只猫剥皮的方法有一百万种。。。。。然而,这里有一个例子 您需要创建一个PageVisits连接模型,将用户连接到页面,并在该模型上手动增加计
我在查看计数器缓存,它统计与用户关联的模型实例的数量,这是否在正确的路径上?任何帮助都将不胜感激。谢谢 给这只猫剥皮的方法有一百万种。。。。。然而,这里有一个例子 您需要创建一个PageVisits连接模型,将用户连接到页面,并在该模型上手动增加计数器
class User < ActiveRecord::Base
has_many :page_visits
end
class Page < ActiveRecord::Base
has_many :page_visits
end
class PageVisits < ActiveRecord::Base
belongs_to :page
belongs_to :user
end
class CampaignsController < ApplicationController
def show
@page = Page.find(params[:id]
if current_user
page_visit = @page.page_visits.where(user_id: current_user.id).first_or_create
page_visit.increment(:visits)
end
respond_with(@page)
end
end
class用户
正如我所说,在很多方面,这只是一个简单的方法。我个人会使用redis完成这类任务。如果下面的答案解决了您的问题,请告诉我。