/ / Пошук NSPredicate з помилкою NSDate - ios, object-c, база даних, sqlite, nspredicate

NSPredicate пошук з помилкою NSDate - ios, aim-c, база даних, sqlite, nspredicate

Я намагаюся отримати список списків справ, які мають виконати завдання> = певна дата.

Модель даних: Тодоліст має багато Тодос.

The due_at поле в моделі Todo - це об'єкт 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%" добре працює.

Відповіді:

1 для відповіді № 1

Щоб отримати списки, які є будь-який to-dos> = певна дата, використання

 [NSPredicate predicateWithFormat:@"ANY todos.due_at >= %@", datePeriod];