Wis*_*erd 10 core-data objective-c nsmanagedobject
我有一个NSManagedObject的子类,我想添加几个ivars来跟踪一些簿记.我不希望这些变量持续存在,因此我不将它们作为数据模型的一部分包含在内.
我无法找到正确的方法.
而且我应该做在我的NSManagedObject子类所有的定制,或者我应该创建我的子类的子类,因此,如果我改变我的数据模型,我不会失去我的所有自定义时,我得到的Xcode生成我的NSManagedObject子类自动?
谢谢!
Dan*_*ert 10
该文档NSManagedObject有一个名为Custom Instance Variables的部分.它讨论了这两种方法.
瞬态,建模属性和ivars都是很好的解决方案.这取决于口味和风格.
其中很重要的一点要记住,如果你使用的ivars:你需要清除的ivars在- (void)didTurnIntoFault和设置任何初始值- (void)awakeFromFetch和- (void)awakeFromInsert.你需要不碰内部的任何建模属性或关系-didTurnIntoFault,否则你就有麻烦了.
每个属性NSManagedObject都有一个名为transient的复选框.这样,您将拥有对象的动态访问器,而不会实际持久保存属性值本身.在文本字段下面找到属性名称条目的复选框.

更新如果您不想因新属性创建迁移,请制作标准ivars
@interface MyMO : NSManagedObject {
    NSString *_nonPersistentAttribute;
}
@property (nonatomic, retain) NSString *nonPersistentAttribute;
@end
@implementation MyMO
@synthesize nonPersistentAttribute=_nonPersistentAttribute;
@end
| 归档时间: | 
 | 
| 查看次数: | 2740 次 | 
| 最近记录: |