我正在使用Magical Record
..我正在使用NSFetchRequest
,如:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(due_at < %@) AND complete == 0",startDate];
NSArray *taskArray = [Task MR_findAllSortedBy:@"due_at" ascending:NO withPredicate:predicate];
我已登录控制台,它是:
<NSFetchRequest: 0x16b239b0> (entity: Task; predicate: (due_at < CAST(415186806.000000, "NSDate") AND complete == 0); sortDescriptors: ((
"(due_at, descending, caseInsensitiveCompare:)"
)); batch size: 20; type: NSManagedObjectResultType; )
它导致我错误:
[__NSDate caseInsensitiveCompare:]: unrecognized selector sent to instance
我如何解决这个问题..
答案 0 :(得分:2)
这可以帮助您解决此问题:
NSFetchRequest *request = [Task MR_requestAll];
NSSortDescriptor *sortByDueAtDate = [NSSortDescriptor sortDescriptorWithKey:@"due_at" ascending:NO selector:@selector(compare:)];
[request setSortDescriptors:@[sortByDueAtDate]];
NSArray *results = [Task MR_executeFetchRequest:request];
//continue on with results