私のアプリケーションは、親とその子供によって使用されます。
保護者が自分のアカウント ページから子供に関する詳細を編集できるようにしたいと考えています。上のセクションに親に関するフィールドが含まれ、下のセクションに子に関するフィールドが含まれる単一のフォームを想定しています。親に複数の子がいる場合、下のセクションはタブ付きになります。お子様 1 人につき 1 つのタブ。
できればRESTfulな設計を実現したい。これまでに検討したオプションは次のとおりです。
オプション 1 - 親のリソース ルートを介して親とすべての子 (ネストされた子フォームのリスト) を公開し、JavaScript を使用して UI をタブベースのレイアウトに変更します。
オプション 2 - 親のリソース ルートを介して、親と 1 つの子 (ネストされたフォーム) を公開します。同じページを公開しますが、ネストされたルートを介して特定の子を対象とします。
そう:
'GET /parent/1' は、'first' (デフォルト) の子用のネストされたサブフォームを持つ親のアカウント ページをレンダリングします。また、ネストされたルートにリンクする 2 つ以上のクリック可能なリンク (タブとしてスタイル設定) も含まれます。子ごとに 1 つ (例: 'GET /account/1/child/1' および 'GET /account/1/child/2')。
ネストされた各ルートは、「子供」コントローラーによって処理されます。このコントローラーは、実際には、親ルート/コントローラーによってレンダリングされるのとまったく同じ親のアカウント ページをレンダリングしますが、ルートによってアドレス指定された子リソースのサブフォームが適切に入力されます。
オプション 2 は実行可能なアプローチのようですが、フィードバックやその他のアイデアを歓迎します。