使用Core Data时,如何覆盖属性上的getter?

Ton*_*ger 13 iphone core-data objective-c

我希望能够在我的一个核心数据模型上的字符串属性上覆盖getter,在getter中我需要找出该属性的值.

@interface LabTest : NSManagedObject {
}
@property (nonatomic, retain) NSString *status;
@end

@implementation LabTest

@dynamic status;

- (NSString *)status {
    NSString *tempStatus = [super valueForKey:@"status"];
    //do some checking here
    return tempStatus;
}

@end
Run Code Online (Sandbox Code Playgroud)

上面的代码崩溃了这个过程.我尝试了一些不同的东西,但我认为它们最终都是无限循环,程序崩溃时代码为139.

在getter中访问核心数据成员的正确方法是什么?

Joh*_*lin 27

你尝试过[self primitiveValueForKey:@"status"]而不是[super valueForkey:@"status"]吗?