0

私が探しているのは、関係によって一意に識別されるコア データ オブジェクトを取得する簡潔な方法です。たとえば、データモデルが与えられた場合:

ここに画像の説明を入力

...そして一連のNSManagedObjectノードが与えられたら、三角形を取得したい、または少なくとも TriangleEntity が存在するかどうかを知りたい:

NSSet *nodeSet = // a set of 3 NSManagedObject*s
NSFetchRequest *request = [[NSFetchRequest alloc] initWithEntityName:@"TriangleEntity"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"corners CONTAINS ALL %@", nodeSet]; 

それは適切な構文ではないと思いCONTAINS ALLます-そして、NSSetを解凍してフェッチできることを知っています

@"corners CONTAINS %@ AND corners CONTAINS %@ AND corners CONTAINS %@", setObj1, setObj2, setObj3

...しかし、それはばかげているようです。よりエレガントなソリューションはありますか?

4

1 に答える 1

1

次の述語は、すべての角が指定されたセットに含まれる三角形を見つけます。

[NSPredicate predicateWithFormat:@"ALL corners IN %@", nodeSet]

nodeSetNSSetまたは にすることができますNSArray

于 2012-10-25T14:31:23.323 に答える