用于特定设置的Rails路由

时间:2012-05-06 20:44:40

标签: ruby-on-rails ruby-on-rails-3 rest routes

我是rails的新手,对如何最好地路由我的特定应用程序有疑问。我正在使用遗留数据库,因此架构已经设置并使事情变得复杂。应用程序的布局包括一个顶部导航栏,其中包含“用户”,然后对于特定的“用户”,还有另一个导航栏来显示/编辑各种表单。例如,一旦查询了特定的“用户”,就会出现“一般信息”和“帐户信息”等单独表格。

我现在的设置是拥有一个'用户'命名空间来对应顶级导航,而命名空间中有第二级导航:'general','project'等。使用此设置选择每个表单从第二级导航有自己的控制器,看起来有点奇怪。

  namespace :users do
    resources :general, :project
  end

这允许我有以下网址:id属于'user'

/users/general/:id
/users/general/:id/edit
/users/account/:id
/users/account/:id/edit

这看起来是否合理,或者是否有人对如何以RESTful方式处理嵌套导航设置有任何其他想法?遗留数据库变得复杂,因为我没有“通用”,“帐户”模型或数据库表。对于每个表单,我需要从几个与“用户”模型关联的模型/表中提取。拥有一个“通用”控制器而没有“通用”模型似乎并不像是困扰我的东西。

1 个答案:

答案 0 :(得分:0)

您正朝着正确的方向发展,但是,名称空间不会帮助您维护您正在寻找的关联。相反,我试试这个:

resources :users do
  resources :general, :project
end

我还建议您查看Rails routing guide