' NSInternalInconsistencyException',reason:不是NSManagedObject的子类。'

时间:2014-09-19 10:34:45

标签: core-data ios8

在我的APP中,我有一个非常简单的模型,只有两个类。其中之一是CDAttribute。 CDAttribute

这个APP在商店里正在运作。现在我今天用xCode 6测试了它,并在我的iPad上放了一个新版本。现在我收到了这个错误

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '"CDAttribute" is not a subclass of NSManagedObject.'
*** First throw call stack:
(0x18342e084 0x193e800e4 0x1830f5350 0x183113f94 0x10004450c 0x100043410 0x1833d4434 0x1833137e0 0x18420b6c0 0x10003f758 0x187e3f104 0x187e432dc 0x187e47624 0x187e46b00 0x187e46a58 0x187e3a38c 0x18b605640 0x1833e6360 0x1833e5468 0x1833e3a8c 0x183311664 0x18c41f5a4 0x187c16984 0x10004d0a0 0x1944eea08)
libc++abi.dylib: terminating with uncaught exception of type NSException

调用此功能

CDAttribute *attr = (CDAttribute *)[NSEntityDescription insertNewObjectForEntityForName:@"CDAttribute" inManagedObjectContext:self.managedObjectContext];

我无法理解,因为我没有触及模型或代码。

1 个答案:

答案 0 :(得分:0)

在iOS8中似乎保留了CDAttribute。我更改了Classname(不是模型中的表名,因为那时我可能会在更新到此版本时将所有条目都丢失)到SIAttribute并且它有效。

这是解决方案,但如果它真的保留并且记录在哪里,我会感兴趣。