我正在使用vote_fu插件来处理一些超级简单的投票。我所拥有的是一个链接作为我的投票,一个用户作为我的选民。
我已成功投票支持我的控制台中的链接。
我正在努力解决这个问题。
在我的链接控制器中,我有以下方法:
def vote
@link = link.find(params[:id])
current_user.vote_up(@link)
redirect_to :back
end
我的观点,我已经玩过,看起来如下:
<% @links.each do |link| %>
<div class="scoreboard">
<%= link_to link.votes_for, :url => vote_link_path(link) %>
</div>
尝试渲染视图时出错:
undefined method `link_votes_path' for #<#<Class:0x00000004b29568>:0x00000004b1a6a8>
所以这条路(我觉得)我一直在修补,没有成功。我想也许这是我的路线,但我不确定为vote_fu添加了什么。这是我的routes.rb内容:
resources :links
resource :users
resource :session, :controller => "sessions"
match '/login' => "sessions#new", :as => "login"
match '/logout' => "sessions#destroy", :as => "logout"
无论如何,我想知道是否有人通过vote_fu成功实施了一个简单的投票解决方案,这可能会让我指出我做错了什么。我知道插件正在运行,因为控制台很好,但我的控制器/视图/路由必须弄乱。
由于
答案 0 :(得分:1)
您必须为您的方法添加路线 - 如下所示:
resources :links do
member do
post 'vote'
end
end
然后你可以使用
link_to "Vote", vote_link_path(link), :method => :post