我想在rails中構建我的第一個新動作,這要感謝這裏的人們的幫助,現在我已經得到絕大多數工作,但是由於我錯誤地理解了事情工作的行動是不執行所需的行動。在Rails 3的新動作中使用重定向
我有一個名爲Items
數據庫,其中包含:id
,:external_url
和:click_count
我的目標是讓這時候點擊,用戶將被引導到外部URL和:click_count
由1
遞增鏈接既然這樣,我有以下幾點: view
<%= link_to image_tag(item.picture.to_s + ".gif"), items_clickcountplusone_path(:id => item.id)%>
items_controller
def clickcountplusone
clickeditem = Item.find(params[:id])
redirect_to clickeditem.external_url if clickeditem.update_attribute(:click_count, clickeditem.click_count + 1)
end
routes.rb
get 'items/:id' => 'items#clickcountplusone', :as => :items_clickcountplusone
使用此代碼,網頁本身加載所有可見的鏈接。 但是,當我點擊一個鏈接時,我被引導到items/whateveridiclickedon
而不是外部URL,此外:click_count
值不會從其初始值增加。
我是否正確地做到了這一點?特別是路線線路好,它目前看起來好像我指示它被引導到我的網站上的特定頁面的項目,這不是我的意圖......此外,什麼是錯誤的if
聲明意味着計數不增加?
您的耐心
試試這個嗎? '<%= link_to image_tag(item.picture.to_s +「.gif」),items_clickcountplusone_path(:id => item.id)%>' –
我確實已經這樣做了 - 我只是意外刪除了它,它在那裏(我刪除了一個ALT描述,並且必須刪除太多)。但是非常感謝您的密切關注! – Texas