Использование NSDate в NSPredicate

Есть ли какой-то способ настроить NSPredicate для сравнения дат?

По сути, у меня есть объект Photo с NSDate, lastViewed.

Я хотел бы настроить NSPredicate, который будет возвращать все объекты Photo, которые были просмотрены позже указанного периода времени - обычно два дня.

Я получаю прошедшую дату следующим образом:

NSTimeInterval secondsPast = -172800;

NSDate * twoDaysPast = [NSDate dateWithTimeInterval: secondsPast SinceDate: [NSDate date]]; И настраиваем NSPredicate следующим образом:

request.predicate = [NSPredicate predicateWithFormat: @ "lastViewed>% @", twoDaysPast];

Однако я не получаю никаких результатов, и я не совсем уверен, почему.

Я знаю, что для всех моих объектов Photo установлен lastViewed - для него установлено значение по умолчанию now, когда фотография добавляется в Core Data , поэтому по умолчанию я должен видеть, что каждая фотография, созданная как lastViewed, будет более свежей, чем мои twoDaysPast NSDate.

Могу ли я напрямую сравнить два экземпляра NSDate таким образом?

6
задан Will 29 June 2012 в 20:29
поделиться