因此,在我的应用程序中,我有一个名为Cards的实体和一个名为Transactions的实体。
交易主体的属性有:日期、地点、金额。因此,如果用户在10个地点消费,我需要在一张卡的交易中有10个条目。
我刚刚开始使用核心数据,它变得越来越混乱。
我还使用MagicalRecord来处理核心数据。
我能够CRUD卡片实体,添加,更新等。一切都很好。
问题是,我需要将交易添加到卡中,但不知道如何开始这种关系。如何将交易添加到卡中,然后获取包含所有交易的卡?
任何洞察力都将不胜感激。
发布于 2013-03-12 05:01:57
如果我没理解错的话,你会在他们之间建立一种关系。
Card ->交易是一种多对关系。有关此选项,请参阅xcode中的右侧窗格。添加一个倒数。总是添加一个倒数。所以你有一个不对多的关系交易->卡,对吗?每笔交易只有一张卡吗?
答案的其余部分取决于您如何访问数据。我建议为每个实体创建一个模型类。你知道怎么做吗?单击该实体,然后转到文件/新/文件,选择核心数据,然后选择NSManagedObjectSubclass,系统将为您创建该实体。该类具有添加相关项的方法。
myTransaction.card = myCard;
分别添加addTransactionsObject: myCard;
当然,假设myCard和myTransaction是类,您的一对一关系命名为card,而多对关系命名为transactions。
发布于 2013-03-12 05:04:54
只需设置从Card到Transaction实体的一对多关系,然后使用该关系:card.transactions获取所有(先前通过[card addTransactionsObject:newTransaction]调用添加的)事务。
别忘了添加一个从Transaction到Card的反向关系!

https://stackoverflow.com/questions/15348387
复制相似问题