Получение базового объекта данных от родительского объекта

Я пытаюсь получить данные из Объекта в Базовых Данных, где я знаю значение связанного Объекта.

IE:
Entity1
- attrib1.1
- attrib1.2
- relationship1

Entity2
- attrib2.1
- relationship1

Entity1 имеет к - многие отношения к Entity2 на relationship1.

Я пытаюсь получить значение Entity2 где Entity1.attrib1.1 = XXX.

Я пытался использовать NSPredicate, но я не уверен как, если это возможно, для записи синтаксиса в predicateWithFormat методе.

Если это не имеет смысла, извините. Я попытаюсь разрешить в случае необходимости.

Я искал Google и здесь, но ничего не нашел. Возможно, мои глаза выделяют?;)

6
задан Tim Sullivan 7 March 2010 в 18:15
поделиться

1 ответ

Я думаю , что вы пытаетесь найти экземпляры 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

, если обратное отношение также является отношением ко многим.

4
ответ дан 17 December 2019 в 07:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: