Я пытаюсь добавить новую сущность (скажем, B, с двумя «двойными» атрибутами) в мою базовую модель данных и создать необязательное отношение ко-многим с существующей сущностью (скажем, A). Я создал новую редакцию модели, которая включает в себя новую сущность B, существующую сущность A и отношение «ко-многим» A - >> B. Эта новая модель является моделью по умолчанию. Я создал модель отображения из v2 в v3 (миграция v1 -> v2 работает нормально, только изменения типа данных для объекта A), но не указал ни выражение значения для отношения A к B, ни выражение значения для атрибутов B.
Когда я запускаю приложение, я получаю следующую ошибку при попытке создать экземпляр модели управляемого объекта managedObjectModel = [[NSManagedObjectModel mergedModelFromBundles:nil] retain];
.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSMutableArray insertObject:atIndex:]: attempt to insert nil object at 0'.
Проблема, вероятно, в том, что я не указал выражение значения для отношения A к B в модели отображения, но я подумал, что это необязательно, поскольку B является необязательным и его не существует в v2 модели. Если мне нужно указать выражение значения для отношения, как мне сделать это для несуществующего (как это не существует в v2 модели) необязательного отношения?
Любая помощь очень ценится.
PS - еще один вопрос - является ли модель сопоставления даже необходимой, или умная автоматическая миграция предназначена для обработки нового объекта и взаимосвязей?