2013-04-09 96 views
0

我有一個應用程序用戶自定義URL

= link_to "Hello" , :controller => "pages" , :action => "home" 

在這個鏈接的點擊生成的URL是一個鏈接按鈕「本地主機:3000 /頁/家」。但我想要的URL應顯示爲=>「localhost:3000/hello」有沒有辦法在軌道做到這一點?

+0

要查看所有可用pathes只是運行'rake routes' – itsnikolay 2013-04-09 12:41:00

回答

3

你可以建立一個named route

match 'hello' => 'pages#home', :as => :hello 

在你看來:

= link_to "Hello", hello_path 
+0

我可以將它定義爲match:controller =>:pages,:action =>:home,:as =>:你好 – 2013-04-10 05:19:44

+0

''pages#home''是一個快捷方式fo r':controller =>:pages,:action =>:home',你可以用它來寫。 – Stefan 2013-04-10 05:54:31

+0

我得到以下錯誤:未定義的局部變量或方法'hello_path'爲#) – 2013-04-11 05:07:58

0

,只要你想,你可以命名的網址,並且可以在routes.rb中映射。你的情況,你可以使用match 這裏是例子:

in your route.rb 
match 'hello' => 'pages#home', :as => :hello 
link_to "hello", home_path

現在你可以在documentaion

0

找到更多的選擇,您也可以嘗試這個

resources :pages do 
    collection do 
    get :hello 
    end 
end