前提条件: 通常在准备新的Ruby on Rails应用程序时,我会绘制有关用户导航的模型和关系。通常我会碰到一个我需要问自己的地方,我是否应该超越通常的“嵌套规则”,不超过1层。有时我觉得需要嵌套,而不是创建另一个命名空间路线和复制工作。
下面是一个例子:
巢或不巢?
型号:用户,公司,地点
用户拥有属于许多公司(多对多)
用户拥有属于许多地方(多对多)
公司拥有属于许多地方(多对多)
路线:
1级嵌套个
用户/:USER_ID /公司/ - 列表与用户相关的所有公司
用户/:USER_ID /位置/ - 列表与用户
超过1级嵌套
用户的所有位置/:user_id/companies /:company_id/locations/- 列出用户的所有公司位置
所以,我的问题是在RoR中嵌套超过1层的水平是否合适?是或否?为什么?
FTW的浅路线。这几乎可以肯定你想要的。 LocationsController#索引与/位置无关,因为你永远不需要/所有/位置。但它可让您保留/ locations/上的所有位置,而不管它与哪种类型相关联。 –
Otto
2009-01-31 17:37:06