1

親 - 子 - 孫に対してエンティティを設定し、それらの間の 1 対多の関係がある場合、親のすべての子エンティティまたは子のすべての孫エンティティを取得できることがわかります。

特定の親のすべての孫エンティティを取得するフェッチを実行することは可能ですか?

助けてくれてありがとう!

4

1 に答える 1

3

多対多の関係ごとに逆の関係がないと、記述したフェッチ要求を実行できません。ただし、逆の関係をモデル化する必要があります。CoreDataは、逆を使用してオブジェクトグラフの一貫性を維持します。toとtoのparent関係が与えられると、次のことができます。ChildParentGrandchindChild

Pareint *aParent; //already initialized

NSSet *allGrandchildren = [aParent valueForKeyPath:@"children.@unionOfSets.children"];

Grandchildまたは、述語を持つエンティティに対するフェッチ要求:

[NSPredicate predicateWithFormat:@"parent.parent == %@", aParent];
于 2010-08-22T16:06:41.007 に答える