对于thumbs_up,没有路由匹配{:action =>“vote_up”,:controller =>“posts”}错误

时间:2012-05-24 04:08:53

标签: ruby-on-rails ruby ruby-on-rails-3 voting voting-system

我正在尝试将thumbs_up gem实现到我的应用程序中,即使我有一条进行vote_up操作的路径,我仍然会收到此错误

我的帖子控制器看起来像

   def vote_up
     begin
       current_user.vote_for(@post = Post.find(params[:id]))
       render :nothing => true, :status => 200
     rescue ActiveRecord::RecordInvalid
       render :nothing => true, :status => 404
     end
   end

我的路线看起来像

   resources :posts do
     get :vote_up, :on => :member
     resources :comments
   end

我不知道问题是什么,如果有人可以帮助我或指向我使用thumb_up gem的教程那将是很棒的。

1 个答案:

答案 0 :(得分:2)

问题是您要求vote_up没有帖子的ID。只是看着你的控制器:

current_user.vote_for(@post = Post.find(params[:id]))

但我在您的请求中没有看到任何id字段。问题出在你看来。