2012-06-12 68 views
0

繼承人什麼我目前使用: Rails -v 3.2.3的Rails 3 - 路由到一個控制器方法

我試圖在routes.rb中的路徑將路由在我links_controller.rb的方法。

的routes.rb

match 'modify_points' => 'links#modify_points', :as => :modify_points

links_controller.rb方法

def modify_points 
    @link = Link.find(params[:id]) 
    @link.update_attribute :points, @link.points + params[:by].to_i if params[:by] =~ /[+|-]?1/ 
    render_text @link.points 
end 

這裏是我如何調用我的觀點方法:

<%= link_to('UP', modify_points_path(link, :by => 1), :remote => true) %>

但是,當我點擊這個UP鏈接....沒有任何反應。 link.points應該增加1,但是當我檢查控制檯時,我的點數仍然爲零。我是否正確創建路線?

回答

0

我一直用這樣的事情:

匹配 '/ modify_points'=> '鏈接#modify_points':爲=> 'modify_points'

不會產生你想要的路線?耙路線顯示什麼?

+0

rakes routes顯示這個'modify_points /modify_points(.:format)links#modify_points'我認爲是正確的路線?但是它並沒有增加我的觀點,所以我必須寫錯方法 –

+0

,如果'modify_points'方法在我的'links_controller'裏面的話......不應該把路由改爲'/ links /:id/modify_points(。 :格式)'? ....對不起,仍然是新的軌道 –

+0

有些奇怪。你的路線顯示'links#modify_points',但你有'link#modify_points' – thisfeller