Объекты области, где не работает
Я пытаюсь получить объекты области с помощью NSPredicate.
Это не работает
RLMResults *activtyResults = [[[self getActivitySource]activities] objectsWhere:@"ID ==[c] '%@'",activityID];
activtyResults - ноль
Это работает:
for (RealmActivity *activity in [[self getActivitySource]activities]){
if ([activity.ID isEqualToString:activityID]) {
return activity;
}
}
ActivityID представляет собой uuid: f20f6217-9cb6-4fe1-9333-8956d1252112
Почему формат предиката @"ID ==[c] '%@'"
здесь не работает? Имеет ли это какое-либо отношение к ID свойства?
1 ответ
Предикат ID == %@
будет эквивалентен императивному коду, которым вы поделились.
Я ожидаю, что предикат, который вы использовали для генерации ошибки, вместо молча nil
, из-за посторонних одинарных кавычек, которые он содержит. Отсутствие ошибки в сочетании с nil
результат, который вы видите, наводит на мысль, что объект, который вы вызываете -objectsWhere:
вероятно nil
,