2010-11-09 57 views
5

在使用Rails中的鏈接查看數小時後,我設法實際獲得了一個鏈接來調用控制器中的方法。但我仍然不明白爲什麼我所有的其他嘗試都失敗了。我希望你能幫我解決這個問題。使用link_to調用控制器動作

我有腳手架「汽車」。在汽車的show view中,id喜歡點擊一個鏈接,在我的Car控制器中調用方法「drive」。

這個工程:<%= link_to "Drive", drive_car_path(@car) %>

似乎只有這個作品,如果我有,這是我的routes.rb:

resources :cars do 
    member do 
    get 'drive' 
    end 
end 

爲什麼<%= link_to "Drive", car_path, :method => :drive %>不行?

對於我在控制器中創建的每種方法,是否需要在routes.rb文件中放置GET

我似乎無法找到任何網站解釋如何與路線一起使用鏈接。他們似乎只是分開。你們有這方面的任何容易理解的教程嗎?

+0

從命令行中,嘗試使用「rake routes」來查看您的選項。 – 2010-11-09 17:51:45

回答

10

嘗試link_to "Drive", :controller => "car", :action => "drive"

此外,method是選擇的HTTP方法(GET,POST,...)。它不是像日常那樣的method

一定要查看Rails Routing from the Outside InThe Lowdown on Routes in Rails 3,它們都是很棒的資源。

+1

啊,「方法」現在更有意義。 – deRailed 2010-11-09 18:46:07

+0

當然,我只是在等着看別人有沒有什麼貢獻。保護你。 – deRailed 2010-11-10 10:29:33

相關問題