我有一个我从.model文件创建的模型类,转到编辑器>为我的名为Target的实体创建NSManagedObject子类。
我想获取Table视图控制器中的第一个Target对象,并获取该实体的某个特定属性。
现在我知道如何获取托管对象:
NSIndexPath *indexPath = [NSIndexPath indexPathForItem:0 inSection:0];
NSManagedObject *record = [fetchedResultsController objectAtIndexPath: indexPath];
但是现在我想要实体对象,我可以从...像target.body
获取其属性值#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@interface Target : NSManagedObject
@property (nonatomic, retain) NSString * body;
这是实体类..
感谢
答案 0 :(得分:0)
您的代码已经返回正确的对象类型。
您只需要给编译器一个提示,即调用
[fetchedResultsController objectAtIndexPath:indexPath];
实际上将返回Target
的实例。
您只需要声明正确的变量类型
Target *record = [fetchedResultsController objectAtIndexPath:indexPath];
显然要编译这个,你需要把标题放在想要使用的文件的顶部Target
#import "Target.h"
答案 1 :(得分:0)
record是一个NSManagedObject。如果您在Target上执行了一次提取,那么该记录不应该只是一个NSManagedObject,它也应该是一个继承自NSManagedObject的Target。因此,而不是NSManagedObject *record =
做Target *record =
。请务必致电#import "Target.h"
,然后您就可以致电record.body
。