我按照本答案中指出的步骤设置了thumb_up
https://stackoverflow.com/a/4963297/1643048
但是我一直收到这个错误并且不知道如何解决它:
没有路线匹配{:action =>“vote_up”,:controller =>“posts”,:id => nil}
有人可以帮忙吗?
更新:
确切错误 -
路由错误
没有路线匹配{:action =>“vote_up”,:controller =>“posts”,:id => nil}
尝试运行rake路线以获取有关可用路线的更多信息。
配置/ routes.rb中:
Projectmadrone::Application.routes.draw do
devise_for :admins
#devise_for :users
devise_for :users do get '/users/sign_out' => 'devise/sessions#destroy' end
resources :posts do
member do
post :vote_up
end
end
root :to => 'posts#index'
end
我的观点:app / views / posts / index.html.erb
<li><%= link_to('vote for this post!', vote_up_post_path(@post), :method => :post) %></li>
答案 0 :(得分:0)
你的@ post-variable似乎是零。可能是因为您在索引视图而不是show-view中使用它。因此,您应该尝试将link_to-code放入app / views / posts / show.html.erb。