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