2014-02-18 63 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

這是一個很好的起點。