ここ数日、私はこれを達成する方法を見つけようとしてきましたが、私のわずかな知識では方法がありません.
コア データ モデル デザイナーで 3 つのエンティティ リスト <<-->> アイテム <<-->> ストアを設計しました。それぞれに「名前」と呼ばれる属性が 1 つだけあります。
目標は、リストを選択してから、ストア別にグループ化されたリスト内のすべてのアイテムを表示することです。
私は使用しようとしました:
// Set entity.
entity = [NSEntityDescription entityForName:@"Item" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
// Set object filters.
predicate = [NSPredicate predicateWithFormat:@"ANY list.name == %@", self.list.name];
[fetchRequest setPredicate:predicate];
// Set FRC
NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:@"store.name" cacheName:nil];
エラー:
'Invalid to many relationship in setPropertiesToFetch: (store.name)'
そして、この方法で行を手動で入力することもできます (方法はまだわかりません):
// Set entity.
entity = [NSEntityDescription entityForName:@"Store" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
// Set object filters.
predicate = [NSPredicate predicateWithFormat:@"SUBQUERY(item.list, $x, $x.name == %@).@count > 0", self.list.name];
[fetchRequest setPredicate:predicate];
// Set FRC
NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:@"name" cacheName:nil];
エラー:
'Only allowed one toMany/manyToMany relationship in subquery expression collection (SUBQUERY(item.list, $x, $x.name == "List02"))'
また、フェッチされたプロパティや、どこにも到達しない他の方法も試しました。
何か案は?
よろしく。ペドロ。