未能在 NSManagedObject 类“ClassName”上调用指定的初始化程序

Posted

技术标签:

【中文标题】未能在 NSManagedObject 类“ClassName”上调用指定的初始化程序【英文标题】:Failed to call designated initializer on NSManagedObject class 'ClassName' 【发布时间】:2010-08-14 15:45:40 【问题描述】:

我正在使用 mogenerator。我收到如下 CoreData 错误:

调用指定初始化程序失败 在 NSManagedObject 类 'ClassName' 上。

请任何人帮我解决这个错误。

【问题讨论】:

类似于***.com/questions/1556304/…? 【参考方案1】:

不要分配/初始化你已经掌握的东西..这就是为什么!

cellForRowAtIndexPath 中的使用示例

使用 ClassName *class = [arrayOfSomething objectAtIndex:indexPath.row];

而不是 ClassName *class = [ClassName alloc] init]; class = [arrayOfSomething objectAtIndex:indexPath.row]

【讨论】:

【参考方案2】:

您需要先显示相关代码,然后才能有人提供帮助。否则我们只是猜测。

显示您如何初始化ClassName

【讨论】:

谢谢。以前我使用 ClassName *dataObj = [[ClassName alloc] init]; dataObj = ....检索代码....现在正在使用 ClassName *dataObj = ..retrival 代码。当我删除 [[ClassName alloc] init] 时,一切正常。【参考方案3】:

不要分配初始化你的 Bean 类,而是使用以下方法来设置 Bean:

-(void)setBean:(YourBeanClassName *)obj

    objBean = obj;

【讨论】:

以上是关于未能在 NSManagedObject 类“ClassName”上调用指定的初始化程序的主要内容,如果未能解决你的问题,请参考以下文章

CoreData 使用父实体创建 NSManagedObject 子类

如何在类之间传输 NSManagedObject 子类?

在 xcode8 中创建 NSManagedObject 类?

如何根据现有的 NSManagedObject 值在 NSManagedObject 派生类中设置默认值?

创建 NSManagedObject 派生类的问题

如何实现符合 Mappable 的 NSManagedObject 类