gpt4 book ai didi

ios - NSManagedObject setter 给我 [ MyObject setName :]: unrecognized selector sent to instance

转载 作者:行者123 更新时间:2023-11-30 12:58:15 31 4
gpt4 key购买 nike

我已经通过 xcode 编辑器菜单创建了一个 NSManagedObject。我的对象只有一个属性“名称”。当我尝试设置属性时,我收到“[MyObject setName:]: 无法识别的选择器发送到实例”

MyObject *thing = [MyObject objectFromJSONDictionary:obj];
thing.name = obj; <-- ERROR HERE

我已经检查过我的属性“名称”在 CD 中与我的类(class)中的相同。我的接口(interface)属性也是一样的。我的动态属性也是一样的。

@property (nonatomic, retain) NSString * name;

@dynamic name;

有什么建议吗?是的,我已经清除了 CD 对象,清理了我的项目,并再次在 CD 中创建了它。同样的问题?

最佳答案

来自NSManagedObject类引用:

If you instantiate a managed object directly, you must call the designated initializer (initWithEntity:insertIntoManagedObjectContext:).

还有一个方便的方法

+[NSEntityDescription insertNewObjectForEntityForName:inManagedObjectContext:]

可用于创建托管对象。

Core Data对象的访问器方法是在运行时动态创建的,因此,此限制的一个原因是必须知道实体描述

您可以使用 nil 上下文创建对象,并稍后将其添加到托管对象上下文中,例如:How can I associate an NSManagedObject to the context after it has been initialised?

关于ios - NSManagedObject setter 给我 [ MyObject setName :]: unrecognized selector sent to instance,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40163264/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com