-2

我有对象,每个事件都有Movie多关系,有 我需要创建 fetchedResultController 的属性,这些电影在具体的一天有事件eventsdate

- (NSFetchedResultsController *)fetchedResultsControllerForEntertainments:(Class)className date:(NSDate *)date
{
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:NSStringFromClass(className)];
NSDateFormatter *dateFormatter = [NSDateFormatter new];
dateFormatter.dateFormat = @"yyyy/MM/dd";
NSDate *startDate = [dateFormatter dateFromString:[dateFormatter stringFromDate:date]];
NSDateComponents *oneDay = [NSDateComponents new];
oneDay.day = 1;
NSDate *endDate = [[NSCalendar currentCalendar] dateByAddingComponents:oneDay toDate:startDate options:0];
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"SUBQUERY(events, $s, ($s.date >= %@ AND $s.date < %@)).@count > 0", startDate, endDate];
NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"objectId" ascending:YES];
fetchRequest.sortDescriptors = @[sortDescriptor];
fetchRequest.fetchBatchSize = 20;
NSFetchedResultsController *fetchResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:nil cacheName:nil];
return fetchResultsController;
}

我想创建一个谓词来返回我的电影,这些电影有当前日期的事件

4

1 回答 1

-1

我认为这是一个错字 -$s.date >= %@ AND $s.date < %@这是正确的吗?那是不可能的情况,请检查一下。编辑:我错了。它是正确的

于 2013-10-09T14:14:46.820 回答