由于我在模型中添加了一些字段,因此我正在尝试为Swift 4应用进行核心数据迁移。经过互联网上的仔细查找后,我得出的结论是,处理迁移的最佳方法是设置NSPersistentContainer的“描述”,以让Swift自己处理迁移。因此,我基于V1创建了第二个数据模型,并且我有以下代码可以访问持久性容器:
lazy var persistentContainer: NSPersistentContainer = {
let container = NSPersistentContainer(name: "Authenticator")
let description = NSPersistentStoreDescription()
description.shouldMigrateStoreAutomatically = true
description.shouldInferMappingModelAutomatically = true
container.persistentStoreDescriptions = [description]
container.loadPersistentStores(completionHandler: {(storeDescription, error) in
if let error = error as NSError?{
fatalError("Unresolved error with database")
}
})
return container
}()
此代码可以编译,但由于我的条目不见了,因此似乎无法将我的旧数据绑定到旧模型。
此代码是否有问题?我需要做其他事情来实现迁移吗?
谢谢