0
說一個應用程序有許多產品和搜索功能。 1.我如何跟蹤每個產品的頁面瀏覽量(簡單計數器)和 2.如何跟蹤搜索查詢?Rails - 跟蹤未登錄的用戶活動
最重要的是,我需要能夠按頁面瀏覽次數查找/訂購產品。
(更簡單/最佳性能/最少外部依賴性)越好!
爲什麼這個問題?到目前爲止,我所見過的解決方案都是過時的寶石,或者在搜索時效果不佳。
說一個應用程序有許多產品和搜索功能。 1.我如何跟蹤每個產品的頁面瀏覽量(簡單計數器)和 2.如何跟蹤搜索查詢?Rails - 跟蹤未登錄的用戶活動
最重要的是,我需要能夠按頁面瀏覽次數查找/訂購產品。
(更簡單/最佳性能/最少外部依賴性)越好!
爲什麼這個問題?到目前爲止,我所見過的解決方案都是過時的寶石,或者在搜索時效果不佳。
這是一個簡單的方法來做到這一點。在該模型中:
def increment(by = 1)
self.views ||= 0 #Prevents error if views can be nil
self.views += by
self.save
end
然後在控制器:
如果拍成一個異步工作,我仍然需要做@model.increment
更快。
爲了防止用戶濫發刷新或東西我做了一個比較複雜一點:
def show
product_itemcode = params[:itemcode]
@product = Product.find_by(itemcode: product_itemcode)
unless session[product_itemcode.to_s]
@product.increment
session[product_itemcode.to_s] = true
end
end
有什麼想法?
編輯:
的增量方法已經存在: http://apidock.com/rails/ActiveRecord/Persistence/increment
您仍需要調用object.save雖然