在Rails中路由别名

时间:2010-12-21 20:23:15

标签: ruby-on-rails

我在Rails 3中有一个模型故事。

我想为“故事”创建别名“书籍”,这样我就可以拥有路由/books/192而不是/stories/192,并且我所有生成的链接(例如link_to)都指向书籍路线而不是故事的路线。

我该怎么做?

由于

3 个答案:

答案 0 :(得分:114)

resources :stories, :path => :books

如果要重命名路径 AND 辅助方法,请执行以下操作:

resources :stories, :path => :books, :as => :books

请参阅:Overriding the Named Helpers

答案 1 :(得分:95)

这就是为什么他们在path match上提出了resources选项,resources :stories, :path => "books" 也提供了这个选项:

{{1}}

答案 2 :(得分:-1)

尝试这样的事情:

match 'books/:id' => 'books#show'
match 'books' => 'books#index'