+entityForName:在此模型中找不到名为“EntityName”的实体
Posted
技术标签:
【中文标题】+entityForName:在此模型中找不到名为“EntityName”的实体【英文标题】:+entityForName: could not locate an entity named 'EntityName' in this model 【发布时间】:2016-07-12 19:03:02 【问题描述】:我知道这可能看起来是重复的,但我尝试了几个答案,但都没有奏效。
我正在尝试使用 Core Data 来存储已完成的关卡,但我在保存数据时遇到了一些麻烦。在一个级别完成的那一刻,将调用以下行。
let appDelegate =
UIApplication.shared().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext
let level = NSEntityDescription.insertNewObject(forEntityName:"SucceededLevels", into:managedContext) as NSManagedObject
person.setValue(levelName, forKey: "levels")
do
try managedContext.save()
levelsArray.append(person)
catch let error as NSError
print("Could not save \(error), \(error.userInfo)")
但我收到以下错误
“由于未捕获的异常而终止应用程序 'NSInternalInconsistencyException',原因:'+entityForName:不能 在此模型中找到名为“SucceededLevels”的实体。”
我已经在 .xcdatamodel 中设置了实体。
【问题讨论】:
检查实体名称的拼写。 【参考方案1】:几天后我终于找到了问题所在。问题不在于代码,当我单击新实体时,Xcode 8 Beta 没有创建新实体。所以我切换到 Xcode 7.3,尽管 swift 2.3/3.0 出现了所有错误,并设法创建了一个新实体。
【讨论】:
以上是关于+entityForName:在此模型中找不到名为“EntityName”的实体的主要内容,如果未能解决你的问题,请参考以下文章
CoreData:“NSInternalInconsistencyException”,原因:“+entityForName:无法在此模型中找到名为“DocumentLocations”的实体。
Swift 3 核心数据 NSInternalInconsistencyException entityForName 无法在此模型中找到名为 Foo 的实体
在此模型中找不到名为“Book”的实体。 ios核心数据错误?
+entityForName: 找不到实体名称的 NSManagedObjectModel