いいえ、個別のフェッチ済み結果コントローラーは必要ありません。
あなたの質問を理解する方法:あなたはカテゴリのリストを表示したいと考えています。カテゴリ名ごとに、未読メッセージの数を表示します。
このように、フェッチされたプロパティをCategory
クラスに実装します。
@implementation Category ()
-(NSUInteger)unreadMessages {
NSUInteger count = 0;
for (Feed *feed in self.feeds) {
NSSet *posts = [feed.posts filteredSetUsingPredicate
[NSPredicate predicateWithFormat:@"read = null"]];
count += posts.count
}
return count;
}
@end
投稿用にデフォルトが設定されたフラグプロパティunread
(名前read
をに変更)を導入すると、さらに効率的だと思います。firstReadDate
1
for (Feed *feed in self.feeds) {
count += [[feed.posts valueForKeyPath:@"@sum.unread"] integerValue];
}