NSManagedObject setter给我:无法识别的select器发送到实例
我已经通过xcode编辑器菜单创build了一个NSManagedObject。 我的对象只有一个属性“名称”。 当我尝试设置属性时,我得到“[MyObject setName:]:无法识别的select器发送到实例”
MyObject *thing = [MyObject objectFromJSONDictionary:obj]; thing.name = obj; <-- ERROR HERE
我已经检查过,我的财产“名称”在CD中与我的class级相同。 另外我的界面属性是一样的。 而我的dynamic属性是一样的。
@property (nonatomic, retain) NSString * name; @dynamic name;
有什么build议么? 是的,我已经擦除了CD对象,清理了我的项目,并再次在CD中创build它。 同样的问题?
从NSManagedObject类参考:
如果直接实例化pipe理对象,则必须调用指定的初始化程序(
initWithEntity:insertIntoManagedObjectContext:
。
还有一个方便的方法
+[NSEntityDescription insertNewObjectForEntityForName:inManagedObjectContext:]
可以用来创buildpipe理对象。
核心数据对象的访问器方法是在运行时dynamic创build的,所以这个限制的一个原因是实体描述必须是已知的。
您可以创build一个nil
上下文的对象,稍后将其添加到托pipe对象上下文中,请参阅:例如, 如何在初始化后将NSManagedObject关联到上下文?
- iOS的崩溃'NSInternalInconsistencyException',原因:'语句仍然是'核心数据caching相关?
- 使用AFIncrementalStore和NSFetchedResultsController死锁
- 使用NSPredicate进行反向string比较
- performBlockAndWait创build死锁
- 魔法logging – 取主线程块ui,在后台返回nil
- 核心数据的预填充版本?
- 从CoreData在NSDictionary中制作嵌套的JSON
- 多个NSPersistentStoreCoordinator实例是否可以连接到相同的底层SQLite持久存储?
- ios Coredata大集插入