我有一个NSManagedObject的子类,我想添加一些ivars来跟踪一些簿记.我不希望这些vars持续存在,这就是为什么我不把它们作为数据模型的一部分.
我找不到这样做的正确方法.
>我应该在我的类中创建ivars,创建相应的属性,然后在实现中进行综合?
>我不应该创建ivars,而是只是声明属性,然后@dynamic的属性在隐含?
>还有其他方法我应该服用吗?
我应该在我的NSManagedObject子类中进行所有的定制,或者我应该创建一个子类的子类,这样如果我更改了我的数据模型,当我得到xcode来生成我的NSManagedObject子类时,我不会丢失所有的自定义自动?
谢谢!
解决方法
NSManagedObject的每个属性都有一个复选框,名为transient.这样,您将拥有对象的动态访问器,而不会实际持续属性值本身.在属性名称输入的文本字段下方查找复选框.
更新如果您不想由于新属性创建迁移,请制作标准ivars
@interface MyMO : NSManagedObject { NSString *_nonPersistentAttribute; } @property (nonatomic,retain) NSString *nonPersistentAttribute; @end @implementation MyMO @synthesize nonPersistentAttribute=_nonPersistentAttribute; @end