我有许多Game
对象,每个对象都有一个date
参数。
在我的控制器中,我想获取这些游戏,按它们的month
日期year
组合分组,这样我可以获得月份列表,并且每个月都可以获得该月发生的游戏列表。
是否有一个简单的解决方案,而无需修改我的 CoreData 模型?
我有许多Game
对象,每个对象都有一个date
参数。
在我的控制器中,我想获取这些游戏,按它们的month
日期year
组合分组,这样我可以获得月份列表,并且每个月都可以获得该月发生的游戏列表。
是否有一个简单的解决方案,而无需修改我的 CoreData 模型?
带有 NSFetchedResultsController 的自定义部分标题- 这个示例项目展示了如何执行此操作(如果我理解正确的话)。显然,它没有使用 MagicalRecord,但它应该很容易移植到 MR。
这对我有用
在你的
model.h
添加
-(NSString *)yearMonth;
和
model.m
-(NSString *)yearMonth
{
NSDateFormatter *dateFormatter = [NSDateFormatter new];
[dateFormatter setDateFormat:@"yyy-MM"];
NSString *formattedDateString = [dateFormatter stringFromDate:self.eventDate];
return formattedDateString;
}
然后按组调用 MR_Fetch 方法,如下所示:
NSFetchedResultsController *frc = [model MR_fetchAllGroupedBy:@"yearMonth" withPredicate:nil sortedBy:@"eventDate" ascending:NO];