2014-02-18 33 views

回答

1

您应该添加一个新的模式,例如:

class PageView 
    belongs_to :page 
    belongs_to :user 
end 

使用方法如下:

所有你需要定义你的浏览模式
PageView.create(page: @page, user: current_user) # to register page view 
PageView.where(page: @page).count # to get views count for particular page 
PageView.where(page: @page, created_at: 1.week.ago..Time.now) # to get views count for particular page for a week 
1

第一。这将有至少以下属性:

  • ID(访问ID)
  • USER_ID(访问者的ID)
  • PAGE_URL(页面访问)的访问
  • created_at(日期和时间)

然后,您可以决定将它存储在像MySQL这样的Relationa数据库中,或者存储在像MongoDB这样的NO-SQL中。对于这种情况他们中的任何一个都可能是一个不错的选择。

如果您决定使用SQL解决方案,只需在User模型中添加has_many :visits,在Visit模型中添加:belongs_to :user

这是一个很好的起点。