0

我有一個一致的<a href="">鏈接按鈕在其中的帖子頁面。我需要爲每個帖子顯示鏈接點擊數。我已經有表列作爲簡單<a href>鏈接點擊計數器與Rails 5沒有使用寶石

t.integer "count_click" 

我怎樣才能讓這個計數器在最簡單的形式,可能嗎?

​​

我大概可以把它與控制器的簡單的SQL查詢發生的,對不對?但我不知道如何觸發它與點擊

謝謝!

+0

那麼[谷歌分析事件跟蹤](https://developers.google.com/anal ytics/devguides /收集/ analyticsjs /事件)?或者,在您的應用程序中,您可以在控制器中更新鏈接。 – user3366016

+0

點擊次數與查看次數有何不同? – Leito

+0

嗨@ user3366016,不知道谷歌的事情:)我正在研究。我試圖在控制器中做,但失敗了。我更新了我的問題。 – Designer

回答

1

對於一個基本的實現,根據我的意見,我會在控制器操作中執行它。我想我會在你的例子的相同動作中做所有事情。

對於你原來的問題有2個計數器:

t.integer "count_click" 
t.integer "count_view" 

我想嘗試設置了一個param添加到鏈接本身點擊它時會通過:

<%= link_to @post.reference_title, reference_url(@post, clicked: true), target: :_blank %> 

對於基本實現你可以這樣增加:

def reference 
    # Increment the view counter whenever page loads. 
    Post.increment_counter(:count_view, @post.id) 
    # Increment the click counter if the link was clicked based on param. 
    Post.increment_counter(:count_click, @post.id) if params[:clicked] == "true" 
end 
+0

謝謝! count_view很好:)我做了一個愚蠢的明顯的錯誤在那裏:)但計數單擊給出錯誤**錯誤數量的參數(給定1,預期0)**我猜,不能通過它作爲@ post.reference_url(點擊:true) – Designer

+0

@Designer我更新了鏈接。我不確定你的路線......現在我正在看這個,是你的應用程序中的路線還是你的模型上存儲URL的屬性?該網址是否會轉到您的應用中的某個網頁? – user3366016

+0

現在我得到**未定義的方法'reference_url'爲#<#:0x007fea7e8197d0> **錯誤。但我明白你在那裏提出的建議。我嘗試**的實現**點擊:真正的**在那裏。謝謝 – Designer