0

たとえば、とという2つのエンティティがClassありStudentます。両方のエンティティは1対多の関係で接続されており、「Class」にはClassIDフィールドがあり、StudentにはClassIDフィールドとStudentIDフィールドの両方があります。

この状況についていくつか質問があります。

  1. ClassとStudentの間の接続を定義するとき、それらはClassIDによって接続されていますか、それともCore Dataが何らかの方法で独自の接続を作成しますか?
  2. Classエンティティをすでに保存した後、Studentを追加したいとします。そのClassIDを使用して新しいStudentを追加することはできますか、それともClassオブジェクトを取得し、その.students NSSetオブジェクトに学生を追加して、Core Dataに保存する必要がありますか?
  3. 後者のオプションが唯一のオプションである場合、Core Dataのレコードを更新するにはどうすればよいですか?フェッチはNSFetchRequestを使用して行われ、それを変更して、管理対象オブジェクトコンテキストを再度保存するだけではありませんか?

多くの質問をしてすみません、そして私はこれに関するどんな援助にも大いに感謝します:)

4

1 に答える 1

1
  1. コアデータに関する限り、ClassIDは単なるユーザーデータです。関係には関与しません。

  2. 2番目のオプション。Core Dataはオブジェクトとその関係を永続化するため、戦略はオブジェクトを更新してから保存することです。

  3. はい。ただし、ユーザーに必要な接続を指定させる目的で、アプリに関連レコードが既に読み込まれていることはよくあることです。

クラスクラスを「クラス」と呼ぶと混乱します。:-)

于 2012-04-12T14:53:59.350 に答える