Card私はあるストアにあるとのデータベースPrinting(参照データ) と別のストアにある と のユーザー データを持っていますContainer( CardInstanceApple が提案するように)。各ユーザーのカードは、カードの特定の印刷に対応するCardInstance特定を含むテーブルです。を使用してカードの値をフィルタリングし、再利用可能なコードを使用してグループ化などを管理できるようにprintingIDしようとしています。NSFetchedResultsController
繰り返しますが、テーブルの基本的な概要は次
CardのnameNormalizedとおりalphaNormalizedですtypeNormalized。
Printing(cardリレーションシップと特定のを持ちますprintingID)
CardInstance(containerリレーションシップ、printingIDプロパティ、およびwith predicate: でprintingFetchフェッチされたプロパティを持ちます)。
(s の対多関係があります)。PrintingprintingID = $FETCH_SOURCE.printingIDContainerCardInstance
が与えられたContainer場合、NSFetchedResultsController を使用して、名前セクションとタイプ セクションの間で並べ替えとグループ化を変更できるようにしたいと考えています。CardInstanceそのため、エンティティ タイプを に設定し、述語を 1 つcontainer = %@、指定されたコンテナに設定した fetchRequest があります。
1) でソートできるようにソート記述子を設定するにはどうすればよいですprintingFetch.card.nameNormalizedかprintingFetch.card.typeNormalized?
2) @"the" という単語を含むすべてのカードを検索したい場合、結果をフィルタリングするにはどうすればよいですか? @"the"の行に沿って何かを考えていprintingFetch.card.nameNormalized contains %@ましたが、クラッシュするだけです。
これをすべて手動で行うことができることはわかっていますが、コンテナーに大量のカードが含まれる場合、それは非常に遅くなる可能性があり、自動的に行われるはずのセクション化とグループ化のコードを書き直すNSFetchedResultsController必要はありません。 .