ruby - 在 Rails 中为路由设置别名

标签 ruby ruby-on-rails-3 routes alias

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

Myapp::Application.routes.draw do
  get 'pages/my_portfolio'
  match '/my_portfolio', :to => 'pages#my_portfolio'
end

所以我有一个页面 Controller ,其中包含我的所有静态页面,但不是将网址显示为

/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 paths来确认您是否实现了您想要的目标。

希望我能帮忙。

关于ruby - 在 Rails 中为路由设置别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24077985/

相关文章:

javascript - 单击后退按钮时加载微调器和显示消息

ruby-on-rails - 使用 2 个电子邮件和凭据在 Rails 中发送电子邮件

ruby - 为什么更改条件语句的顺序会破坏我的代码?

sql - 导轨 3 : ActiveRecord query with :includes only returns results that have related values in included table?

ruby-on-rails-3 - Wicked_PDF 缺少布局

ruby-on-rails-3 - Simple Rails 3路线失败-没有路线匹配

ruby - 在类中使用括号方法时不能省略 `self`

routes - 无限数量的嵌套动态路由 Next.js

backbone.js - 主干路由到/

javascript - expressjs中.get()需要回调函数错误,即使语法正确