我是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方式处理嵌套导航设置有任何其他想法?遗留数据库变得复杂,因为我没有“通用”,“帐户”模型或数据库表。对于每个表单,我需要从几个与“用户”模型关联的模型/表中提取。拥有一个“通用”控制器而没有“通用”模型似乎并不像是困扰我的东西。
答案 0 :(得分:0)
您正朝着正确的方向发展,但是,名称空间不会帮助您维护您正在寻找的关联。相反,我试试这个:
resources :users do
resources :general, :project
end
我还建议您查看Rails routing guide。