Как настроить конфигурацию NSManagedObjectModel при программном создании Entites. - PullRequest
0 голосов
/ 16 сентября 2018

Я создаю сущности в управляемой объектной модели базовых данных программно, используя SWIFT.

Когда я создаю массив NSEntityDescription и передаю его

, пусть managedObjectModel: NSManagedObjectModel = NSPersistentContainer (name:"Nequore"). ManagedObjectModel

managedObjectModel.setEntities (arrEntities, forConfigurationName: "Default")

Я сталкиваюсь со сбоем, связанным с конфигурацией модели, которая гласит, что

*** Завершение работы приложения из-за необработанного исключения «NSInternalInconsistencyException», причина: «Объекты для конфигурации уже должны быть в модели.»

Спасибо за ваше время и внимание.

1 Ответ

0 голосов
/ 16 сентября 2018

Я думаю, что этот сбой объяснен в документации Apple для NSManagedObjectModel .Прочтите параграф Программное редактирование моделей .

Ваш оператор let managedObjectModel создает постоянный контейнер (базовый стек данных), включая модель управляемого объекта, которая, вероятно, пуста (не имеет сущностей)и я предполагаю, что создание постоянного контейнера с использованием модели таким образом, что, согласно этой документации, его больше не нужно редактировать.Попробуйте создать модель управляемого объекта сначала , со всеми сущностями, и , а затем передать эту модель в NSPersistentContainer init(name:managedObjectModel:).

...