2013-04-09 60 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