'NSInternalInconsistencyException',原因:"Foo"不是NSManagedObject的子类

use*_*469 10 iphone core-data

好的,这就是我得到的错误

   *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '"Place" is not a subclass of NSManagedObject.'
Run Code Online (Sandbox Code Playgroud)

我认为这意味着'Place'没有作为实体添加到核心数据模型中??? 但它如下图所示.

我猜我的假设是不正确的,所以任何帮助或想法都会很好.

我很确定这是造成它的线路:

  NSManagedObject* place = [NSEntityDescription
                               insertNewObjectForEntityForName:@"Place" 
                               inManagedObjectContext:context];
Run Code Online (Sandbox Code Playgroud)

pau*_*kow 23

如果你没有使用自定义类(没有Place.[hm]),因为听起来你不是,请检查Entity选项卡,并确保Class name为空(= NSManagedObject) - 而不是Place.


小智 12

我遇到了与Message和Connection类相同的问题.使用MessageUI库添加电子邮件工具后出现错误.我认为发生冲突是因为库将具有名为Message和Connection的类,因此它们不被视为NSManagedObject的子类.通过前缀(在我的情况下使用X)更改其名称使实体成为唯一的.我打算将来为我的所有实体添加前缀,以便产生冲突的可能性更小.