我正在使用SWIFT以编程方式在核心数据的托管对象模型中创建实体。
当我创建一个NSEntityDescription数组并将其传递给
时让managedObjectModel:NSManagedObjectModel = NSPersistentContainer(名称:“ Nequore”)。managedObjectModel
managedObjectModel.setEntities(arrEntities,forConfigurationName:“默认”)
我正面临与模型配置有关的崩溃,该崩溃指出
***由于未捕获的异常“ NSInternalInconsistencyException”而终止应用程序,原因:“配置实体必须已经在模型中。”
感谢您的时间和考虑。
答案 0 :(得分:2)
我认为这种崩溃在Apple documentation for NSManagedObjectModel中得到了解释。阅读段落以编程方式编辑模型。
您的语句let managedObjectModel
正在创建一个持久容器(Core Data Stack),其中包括一个托管对象模型,该模型可能是空的(没有实体),而我猜测创建持久容器是使用模型,根据该文档,不再应对其进行编辑。尝试先创建托管对象模型,首先完成所有实体,然后先将该模型传递给NSPersistentContainer init(name:managedObjectModel:)
。