【发布时间】:2012-05-19 00:25:00
【问题描述】:
我知道许多 Rails 开发人员说将资源嵌套超过 2 层是错误的行为。我也同意,因为当您的网址看起来像 mysite.com/account/1/people/1/notes/1 时,它会变得混乱。我正在尝试找到一种使用嵌套资源但不将它们嵌套 3 层的方法。
这是错误的做法,因为 Rails 开发人员不推荐它,而且很难弄清楚如何将它嵌套在控制器或表单视图中。
resources :account do
resources :people do
resources :notes
end
end
rails 开发人员说应该这样做的正确方法是这样的
resources :account do
resources :people
end
resources :people do
resources :notes
end
这是我经常遇到的问题。每当我访问 account/1/people 时,我都可以将一个人添加到该帐户中,并且可以说 URL 类似于 mysite.com/account/1/people/1 并且效果很好。
现在,如果我尝试从帐户 1 访问 mysite.com/people/1/notes,我会收到错误提示
找不到没有帐户 ID 的人
如何让它正常工作?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3