我正在尝试获得一个待办事项列表>=特定日期的待办事项列表。
数据模型:Todolist有许多待办事项。
Todo模型中的due_at
字段是一个Date对象。
这是我正在使用的取回请求,它总是崩溃。
NSDate *now = [NSDate date];
int daysToAdd = _dueDateSlider.intValue;
NSDate *datePeriod = [now dateByAddingTimeInterval:60*60*24*daysToAdd];
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Todolist"];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"todos.due_at >= %@", datePeriod];
[request setPredicate:pred];
NSError *error = nil;
NSArray *todolists = [managedObjectContext executeFetchRequest:request error:&error];
我收到的错误是:
-[__NSArrayI compare:]: unrecognized selector sent to instance 0x1018a4c50
An uncaught exception was raised
我不确定为什么会发生这种情况,因为任何其他谓词搜索工作得很好。todos.due_at != nil
和todos.content like '%test%'
工作良好
要获取任何待办事项>=特定日期的列表,请使用
[NSPredicate predicateWithFormat:@"ANY todos.due_at >= %@", datePeriod];