【发布时间】:2016-12-14 01:50:38
【问题描述】:
我正在学习 RoR,我目前正在尝试在我的网站中实施一个投票系统。用户可以登录并在论坛上发布 cmets,然后在该论坛上为其他 cmets 投票。
控制器代码
def upvote
@comment = Comment.find(params[:comment])
@comment.update_attribute('upVote', @comment.upvote + 1)
redirect_to :back
end
节目中的链接
<%= link_to 'Up Vote', comment_upvote_path(comment.id), method: :put %>
我尝试用评论替换 (comment.id) 无济于事。
路线
get 'upvote', :to=>'comments#upvote'
resources :comments do
put :upvote
end
点击投票时出现的错误:
找不到带有 'id'= 的评论
app/controllers/cmets_controller.rb:26:in `upvote' 请求
参数:
{"_method"=>"放", "authenticity_token"=>"HNXyufzGsXi/SZoJsa+2uouMKVYlH6vYTHOF8iMgj6zAHO13jApk+QO33xEonkcoFgMugwYQZpSom1+KbVRe7g==", "comment_id"=>"11"}
我查了一下,有一条 id 为 11 的评论存在,所以我真的不知道是什么导致了这个错误。任何帮助将不胜感激!
【问题讨论】:
标签: ruby-on-rails ruby view controller