2012-05-20 2 views
0

У меня есть модель CoreData, которая выглядит немного как это:CoreData: Выбирает объект с заданным свойством И данное отношение?

Object A: 
    Results -- A one to many relationship to an indeterminate number of Object B's. 

Object B: 
    Object Name -- A string. (potentially not unique) 
    Parent -- A singular relationship with Object A. 

Я борюсь с написанием NSPredicate, который будет возвращать ObjectB, если я знаю, что данный объект A и Имя объекта строку Я ищу. Я попытался следующие, но всегда получаю эту ошибку:

" 'NSInvalidArgumentException', причина:«Невозможно разобрать строку формата ..."

request.predicate = [NSPredicate predicateWithFormat:@"NameString == %@, SELF IN %@", NameString, ObjectA.results]; 

request.predicate = [NSPredicate predicateWithFormat:@"(NameString == %@) IN %@", NameString, ObjectA.results]; 

и так далее ...

Кажется, что это должно быть простой и очевидной задачей, но я новичок в Core Data, и мне трудно найти пример, который показывает это.

Спасибо!

ответ

0

Вам необходимо использовать% K.

Вам может понадобиться что-то подобное в вашем предиката

NSString [email protected]"ObjectA"; 
NSString [email protected]"results"; 
request.predicate = [NSPredicate predicateWithFormat:@"NameString == %@, SELF IN %K.%K", NameString, enitity,attributes]; 

Look here.

Смежные вопросы