5つのビューコントローラからデータを取り込む属性を持つエンティティがあります。複数のビューコントローラから単一のコアデータエンティティにデータを保存する方法
アプリは、基本的に5つの質問の詳細なフォームベースのアンケートであり、5つのビューコントローラのそれぞれは、1つの質問と回答の選択肢のセットで構成されています。最初の4つでは、ユーザーは複数の選択問題を持っています。最後の質問では、オプションのセットから複数の値を選択できます。
私は、各ビューコントローラに対して、そのビューコントローラに表示されるオプションのエンティティをそれぞれ管理しています。
ユーザーの回答を取得するために、最初の4つの質問に対する回答の文字列属性と5番目の質問に対するユーザーの選択肢のセットを取得できるように5番目のエンティティとの関係という名前のエンティティを作成しました。
また、ユーザーが1番目の質問から2番目から3番目に移動したときなどに、ユーザーの選択を保存する必要があります。
また、最初の質問の画面が表示されたら、回答を破棄することもできます。
これを達成する最良の方法は何ですか?
私は、次のオプションを探していた -
- は、最初の質問・ビュー・コントローラに来る前に回答エンティティのレコードを作成します。また、管理されたオブジェクトコンテキスト(moc)。次に、5つのView Controllerのそれぞれにmocプロパティを保存し、最初のコントローラからAnswerコントローラに5番目のコントローラにアクセスする前に作成したmocを渡します。ユーザーがある質問から次の質問に移動するたびにこのモックに保存します。
- DataCollector型のSingletonクラスを作成します。ここには、Answerエンティティレコードを作成するinitメソッドと、mocを作成してmocに保存するメソッドがあります。そして、各質問からこの回答管理オブジェクトを参照し、同じMOCを共有します。
アドバイスをしてください。
オプション1は私がやることです。 – Paulw11