ユーザーが新しいモデルを作成できるフォームがあります。モデルには多くの潜在的な属性があり、フォームには、ユーザーがこのモデルに対して「アクティブ」として選択できるすべてのオプションをリストする必要があります。
オプションのコレクションをどのように管理すればよいのか疑問に思っています。私は2つの異なる方法があると思います:
1) フォームを含むビューにコレクションをアタッチし、モデルに別のコレクションをアタッチします。リスト内のアイテムがビューで選択されると、アイテムがモデル内のコレクションにコピーされます。
2)モデルに単一のコレクションを持ち、アイテムを「選択済み」または「未選択」としてマークするため、コレクションは1つしかなく、そのモデルで選択されたものと選択されていないものを表示するときに2つの異なるコレクションを比較する必要はありませんだ。
モデルの一部であり、サーバーに送信して保存する必要があるデータのみがモデルに含まれているため、最初のオプションはより「適切」であると考えました。「選択した」もの全体がある場合は、保存時にそのデータを並べ替えて、サーバーに送信するものを決定する必要があります。