当我尝试将一个简单的字符串保存到CoreData时遇到了这个问题。
'+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name 'CurrentUser''
CoreData设置良好。我使用以下代码继续进行操作。
func saveName(name: String) {
let appDelegate = UIApplication.shared.delegate as! AppDelegate
let context: NSManagedObjectContext = appDelegate.persistentContainer.viewContext
if context == nil {
print("s")
} else {
print("d")
}
let entity = NSEntityDescription.insertNewObject(forEntityName: "CurrentUser", into: context)
entity.setValue(name, forKey: "name")
do {
try context.save()
print("saved")
} catch {
print("error")
}
}
通话:
saveName("Edwin")
这是我项目中的代码,该代码在昨天之前运行良好。我不知道刚才发生了什么。突然间,它开始显示我上面提到的错误。
我试图找到问题的地方:
我发现的东西
帮助我解决这个奇怪的问题。
我正在使用Xcode 9.4.1 斯威夫特:4.1
谢谢。
答案 0 :(得分:0)
这是CoreData面临的最常见问题。就我而言,我只是重新创建了数据模型并且它起作用了。感谢您在评论部分的讨论。