簡體   English   中英

Rails 3:嵌套資源3層深?

[英]Rails 3: Nested Resources 3 Levels Deep?

我已經讀過James Buck的這篇文章 ,但是有點過時了。

這是我所知的不良做法:

resources :companies do
  resources :users
  resources :roles
  resources :people do
    resources :notes
  end
end

這是我應該做的嗎?

resources :companies do
  resources :users, :roles, :people
end

resources :people do
  resources :notes
end

有人可以向我解釋為什么還是為什么嗎?

兩者都會為:companies,:users,:roles和:people生成確切的路由。

但是:notes路由會有所不同。

在第一種情況下,:notes路由將生成類似:

/companies/:company_id/people/:person_id/notes(.:format) 
/companies/:company_id/people/:person_id/notes/new(.:format)

在第二種情況下,路線與公司無關,看起來像:

/people/:person_id/notes(.:format)
/people/:person_id/notes/new(.:format)

因此,我認為這取決於您的應用程序以及您希望選擇的路由。

希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM