NSPredicate iPhone 3.2 SDK Основные данные «IN предложение» NSInvalidArgumentException исключение - PullRequest
9 голосов
/ 21 февраля 2011

У меня есть коллекция Calendar объектов, и я хочу запросить их по их свойству service_id.Я использую Core Data на iPhone 3.2 SDK с sqlite.

calendars является результатом NSArray для NSFetchRequest.Я извлекаю свойство service_id из каждого объекта в NSArray.

NSPredicate *tripsWithServiceId = [NSPredicate predicateWithFormat:@"service_id IN %@", [calendars valueForKey:@"service_id"]];

Однако это создает исключение:

'NSInvalidArgumentException', reason: 'unimplemented SQL generation for predicate : (service_id IN {"DEC10-Multi-Weekday-01", "MAR11-Multi-Weekday-01", "MAR11-Multi-Weekday-02"})'

Следующий запрос SQL в консоли sqliteвернет ожидаемые результаты:

select ztrip.zservice_id from ztrip WHERE ztrip.zservice_id IN ("DEC10-Multi-Sunday-01", "DEC10-Multi-Sunday-01");

Я просто пытаюсь повторить это с NSPredicate, если это поможет.

Попробовал перечитать документы и опробовал ряд предложенных исправлений.Проверил в IRC, и кто-то еще думал, что синтаксис выглядит хорошо.Какие-нибудь советы?Полностью застрял здесь.Благодаря.

...