2011-03-02 75 views
1

我使用vote_fu插件來照顧一些超級簡單的投票。我擁有的是一個鏈接,因爲我的投票權,以及一個用戶作爲我的選民。Rails 3 - vote_fu - link_to投票?

我已經成功地爲我的控制檯中的鏈接投票。

我一直在努力的是在視圖中渲染它。

在我的鏈路控制器,我有以下方法:

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一個簡單的投票解決方案,可以點我對我在做什麼錯。我知道該插件正在工作,因爲控制檯很好,但我的控制器/視圖/路線必須搞亂。

感謝

回答

1

您必須添加一個路由,你的方法 - 是這樣的:

resources :links do 
    member do 
    post 'vote' 
    end 
end 

然後你可以使用

link_to "Vote", vote_link_path(link), :method => :post