MagicalRecord - 按月/年分组获取对象

时间:2013-10-21 07:54:30

标签: iphone database core-data magicalrecord

我有许多Game个对象,每个对象都有date个参数。

在我的控制器中,我想要获取这些游戏,按照month - year日期组合分组 - 这样我就可以获得月份列表,以及每个月的列表那个月发生的游戏。

是否有一个简单的解决方案,而无需修改我的CoreData模型?

2 个答案:

答案 0 :(得分:0)

Custom Section Titles with NSFetchedResultsController - 此示例项目显示了如何执行此操作(如果我理解正确的话)。显然,它不使用MagicalRecord,但它应该很容易移植到MR。

答案 1 :(得分:0)

这对我有用

中的

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];