jdo*_*dog 3 core-data objective-c ios
我通过xcode Editor菜单创建了一个NSManagedObject.我的对象只有一个属性"name".当我尝试设置属性时,我得到"[MyObject setName:]:无法识别的选择器发送到实例"
MyObject *thing = [MyObject objectFromJSONDictionary:obj];
thing.name = obj; <-- ERROR HERE
Run Code Online (Sandbox Code Playgroud)
我已经检查过我的属性"name"在CD中和我班级中的相同.我的界面属性也一样.我的动态属性是一样的.
@property (nonatomic, retain) NSString * name;
@dynamic name;
Run Code Online (Sandbox Code Playgroud)
有什么建议?是的,我已经清除了CD对象,清理了我的项目,并再次在CD中创建了它.同样的问题?
从NSManagedObject类参考:
如果直接实例化托管对象,则必须调用指定的初始化程序(
initWithEntity:insertIntoManagedObjectContext:).
还有一种便利方法
+[NSEntityDescription insertNewObjectForEntityForName:inManagedObjectContext:]
Run Code Online (Sandbox Code Playgroud)
可用于创建托管对象.
Core Data对象的访问器方法是在运行时动态创建的,因此这种限制的一个原因是必须知道实体描述.
您可以使用nil上下文创建一个对象,然后将其添加到托管对象上下文中,例如,请参阅:如何在初始化后将NSManagedObject与上下文关联?
| 归档时间: |
|
| 查看次数: |
1389 次 |
| 最近记录: |