0

我正在寻求一些帮助,以使我的 URL 对我的 Rails 应用程序中的用户更具吸引力。该应用程序在 3.2.11 上,我正在运行 ruby​​ 1.9.2p320

我目前有两个模型,我认为它们在 URL 表示中可能会更清晰,Company 和 Consultant。

他们都有唯一的字段,公司有:名称,顾问有:用户名。公司 has_many :consultants 顾问 belongs_to :company

我正在使用friendly_id,因此这两个资源在 URL 中都有这些唯一 ID:

http://localhost:3000/company/:name

http://localhost:3000/consultants/:username

我的路线如下所示:

resources :company, :path => '/company'

resources :consultants, :path => '/consultants'

现在我想知道是否有任何巧妙的方法可以让公司的网址看起来像这样:

http://localhost:3000/:name

对顾问来说是这样的:

http://localhost:3000/:name/:username

如果可能的话,我将非常感谢您对此事的任何帮助,谢谢!如果我遗漏了任何需要的重要信息,我会立即道歉。

/拉斯穆斯

4

1 回答 1

0

您可以将 :path 更改为您想要的任何内容,例如:

resources :company, :path => '/company'

resources :company, :path => ''

这将从您的网址中删除 /company/

这是一个你也可以使用的 gem,但它有很多功能,所以我想它对你的需求来说很重: friendly_id

这是关于路由和命名空间的一个很好的指南:Rails routing from the outside in

于 2013-02-15T14:44:56.310 回答