Подтвердить что ты не робот

Ошибка связи с основными данными

Отслеживание семейных отношений в Core Data (1 родительский объект + 2 типа детей, один из которых рекурсивный), пытаясь создать в меню Interface Builder выпадающее меню, в котором перечислены имена родительских объектов, чтобы пользователь мог выберите один для ассоциирования в качестве родителя редактируемой записи. У меня есть все привязки, но когда он запускается, в первом слоте меню появляется следующий текст ошибки:

Отказ связи для (<NSRelationshipDescription: 0x100143ed0>), имя parent, isOptional 1, isTransient 0, сущность Family, renamingIdentifier parent, предикаты проверки ( ), предупреждения ( ), версияHashModifier (null), назначение сущность Family, inverseRelationship subFamilies, minCount 0, maxCount 0 на 0x10025c850

Я немного читал в Интернете, и, похоже, это связано с тем фактом, что у меня установлено отношение "один к одному" (поскольку у одного родителя может быть несколько детей, но я хотите ограничить каждого ребенка только одним родителем). Я пытался найти способ реструктурировать модель данных, чтобы не ставить отношения "один-к-одному" на что-то, что нужно будет вызвать таким образом, но я застреваю, пытаясь понять как отслеживать детей. Любые идеи о возможных методах решения проблемы?

4b9b3361

Ответ 1

Ошибка в Core Data не является ошибкой, это просто означает, что то, что вы пытаетесь получить, еще не было извлечено из базы данных. Если вы сделаете что-то вроде [fetchResults valueForKey:@"name"], он загорится, и вы получите то, что ожидаете. Это не должно быть проблемой с вашей моделью отношений.

Кстати, "minCount 0, maxCount 0" кажется странным. Это действительно то, что вы хотите? minCount 0 и maxCount 1 должен иметь больше смысла.