我正在设计一个新的发票应用程序。有许多特性我不知道如何在核心数据中实现。我向你寻求以下方面的帮助。
为了保持简单,假设有两个实体,发票实体和细节实体,与-多关系'invoiceDetails‘和-一个关系’细节语音‘。这是我的问题。
如何在核心数据应用程序中实现这一点?谢谢。
/Mikael
发布于 2013-11-03 23:51:02
你必须自己分配这个价值。我要做的是将最高序列号作为元数据存储在持久存储文件中(请参阅NSPersistentStoreCoordinator的元数据相关方法)。每当您创建一个新实例时,从存储元数据中读取最高序列号,增加它,在新实例上使用该值,然后将新值保存回存储元数据。
2-6.计算属性
这些操作通常通过子类NSManagedObject处理,然后将setter方法重写到其值影响其他属性的属性上。例如,基于#2,您的price属性的设置器看起来如下所示:
- (void)setPrice:(NSDecimalNumber *)price
{
[self willChangeValueForKey:@"price"];
[self setPrimitiveValue:price forKey:price];
[self didChangeValueForKey:@"price"];
// Now calculate the new value for "amount" and set it on self.
}对每个案例遵循相同的模式。您也可以使用键值观察来监视这些属性的更改,但我发现自定义访问器更清晰、更容易出错。
https://stackoverflow.com/questions/19758332
复制相似问题