0

コンテキストに基づいてオブジェクトを操作し、関係を操作できます。登録したオブジェクトは正しく動作しています。

私のストアは正しい構成でコーディネーターに追加されます (構成には 3 つのエンティティがあり、1 つのエンティティと他の 2 つのエンティティが最初のエンティティと対多の関係にあります)。

-many エンティティまたは両方の -many エンティティを使用してストアを保存すると、正しく機能します。ただし、one-entity をコンテキストに追加すると、オブジェクト グラフは保存されません。

初心者にありがちな問題のように思えますが、それはつまり、初心者には難しい解決策でもあるということです。このようなトラブルに遭遇したのは私が初めてではないでしょうか?

更新: 返信と指摘ありがとうございます。主な問題は、微妙に指摘されているように、エラーを適切に処理していないことです。この投稿、Core Data Entity Relationship Does Not Save Between Launchesを見た後、エラー処理の改善を開始しました。この問題に関するローカライズされた説明は「ID が必要」でした。それが何を意味するのかはまだわかりませんが、少なくとも今なら理解するチャンスがあります。

4

1 に答える 1

1

対多の関係は、オブジェクトのセットとして表されます。したがって、 child ->> parent は、 child.parent がセットとして表されることを意味します。したがって、新しい親オブジェクトを追加するときは、コンテキストを保存する前に、その親オブジェクトをセットに追加する必要があります。self.parent = insert_parent_object と言ったら、どうなるかわかりません。逆に行けば簡単です。親オブジェクトを挿入するときは、子を設定して (それがあると仮定して)、コンテキストを保存します。多対多の関係でない限り、それは機能します。

エラーが発生した場合は、デバッグに役立つコードとエラー メッセージが役立ちます。これにはコードがあります: CoreData 追加関係 to-many

于 2013-07-21T07:30:27.840 に答える