Каждый выбор имеет только одну сущность в качестве цели.Предикат для выборки может работать только с атрибутами и отношениями целевого объекта.Если вы хотите протестировать свойство другого объекта, должна быть связь между целевым объектом и другим объектом.
Предположим, у вас есть следующая модель данных:
Alpha{
name:string
beta<-->Beta.alpha
}
Beta{
cost:number
alpha<-->Alpha.beta
}
Gamma{
date:date
}
Если ваша целевая сущность для выборки равна Alpha
, тогда вы можете создать предикат, который проверяет атрибут Beta
через каждуюAlpha
отношение beta
объекта.
NSPredicate *p=[NSPredicate predicateWithFormat:@"beta.number>5"];
... но вы не можете создать предикат, который будет обращаться к атрибуту Gamma
, потому что отношения отсутствуют.