我正在學習RoR,我目前正試圖在我的網站上實施一個投票系統。用戶可以在論壇上登錄和發表評論,然後在該論壇上提出其他意見。在節目如何使用鏈接/按鈕更改列屬性 - Ruby on Rails
<%= link_to 'Up Vote', comment_upvote_path(comment.id), method: :put %>
控制器代碼
def upvote
@comment = Comment.find(params[:comment])
@comment.update_attribute('upVote', @comment.upvote + 1)
redirect_to :back
end
鏈接我試圖無濟於事評論代(comment.id)。
路線
get 'upvote', :to=>'comments#upvote'
resources :comments do
put :upvote
end
當我點擊給予好評,我遇到了錯誤發生的情況:
無法找到與 'ID' 註釋=
應用程序/控制器/ comments_controller.rb:26:'upvote' 請求
參數:
{ 「_method」=> 「放」, 「authenticity_token」=> 「HNXyufzGsXi/SZoJsa + 2uouMKVYlH6vYTHOF8iMgj6zAHO13jApk + QO33xEonkcoFgMugwYQZpSom1 + KbVRe7g ==」, 「COMMENT_ID」=> 「11」}
我檢查和有11個ID的評論存在,所以我真的不知道是什麼導致了這個錯誤。任何幫助將非常感謝!
是啊非常感謝你,都不敢相信,我沒有看到這一點。我現在得到了:未定義的方法'+'爲零:NilClass。所以我認爲我應該使用某種增量方法rails對我來說已經有了。 –
@EduardoTafner:那將是因爲你從0開始,默認爲'nil:NilClass'。你可以使用@ comment.increment('upVote')'增加1。 –