【发布时间】:2010-11-22 18:10:44
【问题描述】:
我对 Rails 路由有基本的了解,但没有什么太高级的。到目前为止,我已经使用了基于 RESTful 资源的路由和一些自定义命名的路由。
我现在几乎完成了我的应用程序,我想制作一些漂亮的网址。
在我的应用中,每个用户都有很多页面。使 URL 看起来像 www.sitename.com/username/page_name 的最佳方法是什么?
【问题讨论】:
标签: ruby-on-rails
我对 Rails 路由有基本的了解,但没有什么太高级的。到目前为止,我已经使用了基于 RESTful 资源的路由和一些自定义命名的路由。
我现在几乎完成了我的应用程序,我想制作一些漂亮的网址。
在我的应用中,每个用户都有很多页面。使 URL 看起来像 www.sitename.com/username/page_name 的最佳方法是什么?
【问题讨论】:
标签: ruby-on-rails
这将路由到页面控制器的显示操作。参数哈希包括 :username 和 :page_name。
match "/:username/:page_name" => "pages#show"
记得把它放在最后,否则它会匹配几乎所有东西。
【讨论】:
我不太确定你在用这个做什么,但是这样的东西可能在你的路由文件中起作用:
resources :users do
get 'page_name'
end
这将产生:users/:id/page_name
您可能想查看Railsguide on routing。
【讨论】:
您要查找的是member route(第 2.9.1 节)。
resources :users do
member do
get :cool_page
end
end
将导致 /users/:id/cool_page
【讨论】: