【发布时间】:2012-03-02 17:39:55
【问题描述】:
我们想加密实体的某些属性,但仍然能够使用该属性执行获取和谓词,而无需特别注意谓词等......
人物属性名已加密
NSPredicate * predicate = [NSPredicate predicateWithFormat:@"name like JOHN"];
johns = [persons filteredArrayUsingPredicate: predicate];
核心数据实体
.h
@interface Person : NSManagedObject
@property (nonatomic, retain) NSString * name; // crypted
@property (nonatomic, retain) NSString * description; // crypted
@property (nonatomic, retain) NSString * someAtrribute;
@end
.m
@implementation File
@dynamic name;
@dynamic description;
@dynamic someAttribute;
@end
- 我无法将 @dynamic 更改为 @synthesize 并实现我的自定义 setter 和 getter
- 我可以将加密属性更改为 c_name 并使用自定义 getter 和 setter 添加合成属性名称,但这不适用于谓词
【问题讨论】:
标签: objective-c cocoa core-data encryption