多くのレール開発者は、2レベル以上の深さでリソースを入れ子にしていると言っています。あなたのURLがmysite.com/account/1/people/1/notes/1のように見えるときに乱雑になるので、私も同意します。私はネストされたリソースを使用する方法を見つけようとしていますが、3レベル深く入れ子にすることはありません。Rails 3レベルの深いネストされたリソース
これはレール開発者には推奨されていないし、コントローラーやフォームビューでこれをどのようにネストするかを考えるのも非常に難しいので、これは間違ったやり方です。
resources :account do
resources :people do
resources :notes
end
end
正しい方法は、開発者がこれを行うべきであると言うレールそう
resources :account do
resources :people
end
resources :people do
resources :notes
end
のようなものですここで私はいつもに実行する問題があります。これまでアカウント/ 1 /人を訪問したときに、アカウントに人を追加することができ、そのURLはmysite.com/account/1/people/1のようなものであり、それはうまくいきます。今、私はエラーを取得するアカウント1からmysite.com/people/1/notesにアクセスしようとした場合
ない人とアカウントIDを見つけることができません
どのようにすることができますこれが正しく動作するようにしますか?
現在、私のルートファイルには浅いtrueがありますが、アカウントIDなしで人/ノートにどのようにアクセスできるかわかりません。 Railsがこのエラーを投げています。「IDなしでアカウントを見つけることができませんでした。」 – Yooku
私は答えを更新しました。ものを明確にすることを望む – jamesc