Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 在Rails中对路线使用别名_Ruby_Ruby On Rails 3_Routes_Alias - Fatal编程技术网

Ruby 在Rails中对路线使用别名

Ruby 在Rails中对路线使用别名,ruby,ruby-on-rails-3,routes,alias,Ruby,Ruby On Rails 3,Routes,Alias,我想在地址栏中为用户显示路线名称的方式添加别名,在我的路线中,目前我有 Myapp::Application.routes.draw do get 'pages/my_portfolio' match '/my_portfolio', :to => 'pages#my_portfolio' end 因此,我有一个页面控制器,它拥有我所有的静态页面,而不是将url显示为 /my_portfolio 我希望它显示为 /my-portfolio 我试过了 match '/my_po

我想在地址栏中为用户显示路线名称的方式添加别名,在我的路线中,目前我有

Myapp::Application.routes.draw do
  get 'pages/my_portfolio'
  match '/my_portfolio', :to => 'pages#my_portfolio'
end
因此,我有一个页面控制器,它拥有我所有的静态页面,而不是将url显示为

/my_portfolio
我希望它显示为

/my-portfolio
我试过了

match '/my_portfolio', :to => 'pages#my_portfolio', :as => 'my-portfolio'
但是我犯了一个错误

Invalid route name: 'my-portfolio' (ArgumentError) 
我怎样才能做到这一点


谢谢

我想你在找这个:

match '/my-portfolio', :to => 'pages#my_portfolio', :as => 'my_portfolio'
您可以运行
rake routes
来确认您实现了想要的目标


希望我能帮上忙。

像这样尝试
match'/my_portfolio',:to=>“pages#my_portfolio',:as=>“my portfolio”
我以前试过,但得到了错误无效的路由名称:“my portfolio”(ArgumentError)如果你将
match'/my_portfolio'
重写为
match'/my portfolio'
,会发生什么?如下所示:
获取“pages/my portfolio”
匹配“/my portfolio”;:to=>“pages\35; my\u portfolio”我获取未定义的局部变量或方法“my\u portfolio\u path”,因此如果我在地址栏中将路由更改为pages\u my\u portfolio\u路径,则该路由显示为/pages/my\u portfolio