swift - 向 Core Data 添加数据时出现问题 - nil 不是合法参数
问题描述
我收到此错误:
2018-09-08 17:53:36.795035+0200 电影轮盘[826:263749] [错误] 错误:无法加载名为 ett CoreData 的模型:错误:无法加载名为 ett 的模型 2018-09-08 17:53:36.796536 +0200 电影应用 [826:263749] *** 由于未捕获的异常“NSInvalidArgumentException”而终止应用,原因:“+entityForName:nil 不是搜索实体名称“MovieData”的合法 NSManagedObjectContext 参数
也许你们中的一些人可以帮助我解决这个问题。我已经搜索并阅读了我必须创建一个 NSManagedObjectContext。我已经在我的函数中创建了这个,但我仍然收到这个错误。
func save(name: String) {
guard let appDelegate =
UIApplication.shared.delegate as? AppDelegate else {
return
}
// 1
let managedContext =
appDelegate.persistentContainer.viewContext
// 2
let entity =
NSEntityDescription.entity(forEntityName: "MovieData",
in: managedContext)!
let MovieDT = NSManagedObject(entity: entity,
insertInto: managedContext)
// 3
MovieDT.setValue(name, forKeyPath: "titel")
// 4
do {
try managedContext.save()
movieArray.append(MovieDT)
} catch let error as NSError {
print("Could not save. \(error), \(error.userInfo)")
}
}
解决方案
这个问题只有在模型名称改变时才会发生,在这里AppDelegate
let container = NSPersistentcontainer(name:"thisMayChanged")
container.loadPersistentStores......
崩溃很明显
CoreData:错误:无法加载名为ett的模型
项目名称为电影APP
电影APP[826:263749]
您将原始名称更改为 ett 默认情况下它应该是Movie_APP
推荐阅读
- vuejs2 - Vue2 / Vue Router:从导航守卫设置数据
- php - 自定义分类类别从搜索中排除
- python - 修复检查列表中整数的错误
- javascript - 如何异步事件处理程序?等待承诺 javascript
- mysql - 关于 MySQL 子查询 EXISTS 和 NOT EXISTS 的混淆
- google-chrome - 当我在 Instagram 的聊天系统(在 Chrome 上)发送消息时,有没有办法查看该特定消息的传出 HTTP 请求?
- r - 如何在数据框中的某些条件下检查重复?
- android - 片段中 applyStyle(int resId,boolean force) 的适当位置是什么?
- java - 用于数字孪生的 Azure 函数应用程序中的 NoClassDefFoundError
- azure - Microsoft Graph 获取具有扩展属性的 AD 组成员