Я пытаюсь получить данные из Объекта в Базовых Данных, где я знаю значение связанного Объекта.
IE:
Entity1
- attrib1.1
- attrib1.2
- relationship1
Entity2
- attrib2.1
- relationship1
Entity1 имеет к - многие отношения к Entity2 на relationship1.
Я пытаюсь получить значение Entity2 где Entity1.attrib1.1 = XXX.
Я пытался использовать NSPredicate, но я не уверен как, если это возможно, для записи синтаксиса в predicateWithFormat методе.
Если это не имеет смысла, извините. Я попытаюсь разрешить в случае необходимости.
Я искал Google и здесь, но ничего не нашел. Возможно, мои глаза выделяют?;)
Я думаю , что вы пытаетесь найти экземпляры Entity2
, где ] Entity1.attrib1.1 == XXX
и Entity1.relationship1
содержит ссылку на экземпляр Entity2
. Из вашего описания неясно, является ли Entity2.relationship1
инверсией Entity1.relationship1
. Если нет, вам действительно следует создать обратную связь и установить ее как таковую в разработчике моделей данных. Если вы действительно не знаете, что делаете, и не уверены, что вам не нужна обратная связь, Core Data не будет работать так, как вы ожидаете, если обратная связь не существует.
Если у вас есть обратная связь от Entity2
к Entity1
(назовем ее inverseRelationship
для примера), вы можете выполнить запрос выборки для Entity2
, использующий экземпляр NSPredicate
со строкой формата
inverseRelationship.attrib1.1 == XXX
, если обратное отношение является отношением к одному, или
ANY inverseRelationship.attrib1.1 == XXX
, если обратное отношение также является отношением ко многим.