Objective c 核心数据请求问题

Objective c 核心数据请求问题,objective-c,core-data,request,data-modeling,Objective C,Core Data,Request,Data Modeling,我有一个数据模型,在执行请求时遇到了一个问题 这是我的模型: 我想得到与一个特定事件相关的所有费用 你认为我的模型错了吗 有关更多说明,请参见我在数据库中设置数据的方式: 我有两种类型的活动:“活动”和“聚会” 一个来宾与1个或n个费用关联,一个费用与1个或n个来宾关联。 这就是我创建实体事务的原因 交易有两种类型:付费和受益,因为客人可以支付费用,也可以是受益人 以下是我如何处理这些实体: 对于一个活动中的一项费用,一位客人为所有其他客人支付该费用,因此我创建了一个与此客人关联的交易,该交易类

我有一个数据模型,在执行请求时遇到了一个问题

这是我的模型:

我想得到与一个特定事件相关的所有费用

你认为我的模型错了吗

有关更多说明,请参见我在数据库中设置数据的方式: 我有两种类型的活动:“活动”和“聚会”

一个来宾与1个或n个费用关联,一个费用与1个或n个来宾关联。 这就是我创建实体事务的原因

交易有两种类型:付费和受益,因为客人可以支付费用,也可以是受益人

以下是我如何处理这些实体: 对于一个活动中的一项费用,一位客人为所有其他客人支付该费用,因此我创建了一个与此客人关联的交易,该交易类型为“已付”,并且a与我活动的客人有许多交易,这些交易与相同费用关联,但类型为受益

我不知道我很清楚我的国家

编辑

由于人们并不真正理解我的问题,我将解释我的应用程序是如何工作的

我申请的主要目的是重新平衡聚会生日、寿司派对等或活动假期、周末等的费用

我的应用程序已经在苹果商店iVent上了。 但它工作得不太好,这就是为什么我想使用核心数据更新它:

那么,它是如何工作的呢

用户创建事件并选择事件的类型

对于缔约方:

我获取iPhone联系人并将其显示在tableview上,用户检查邀请哪个联系人参加聚会

然后,对于每个活动,我都有一个购物清单。我从plist中获取杂货清单,用户可以将其修改为默认杂货清单。但是,对于每个事件,用户可以删除所有的杂货,这不会影响plist

我的杂货是按饮料、膳食、家具、酒精等分类的。。 用户选择他想要的杂货店,例如2个6包,3瓶红酒等。 然后,他把一家杂货店和一位客人联系起来:保罗将买一个六包和一瓶红酒,艾米买一个六包等等

然后,我允许用户给出每个指定杂货的价格,并设置哪个客人是这个杂货店的受益人。 例如,Anna不喝酒,因此当用户将重新平衡用户之间的所有价格时,她不想支付任何酒精费用

对于事件,过程是不同的:

用户仅检查受邀来宾的活动创建。 然后在活动期间,用户将在数据库中输入所产生的所有费用

例如,保罗和安娜为每个人付了汽油费,所以我们把保罗和安娜定为一笔费用的买主,保罗、安娜、莫里斯和迈克定为受益人,因为他们都在车里

我们可以为买家设定不同的价格,例如汽油价格为50美元,然后Anna支付20美元,Mike支付30美元

受益人也是如此:例如,迈克只是在旅行中途来的,所以在重新平衡后,他只需支付天然气价格的12.5%,而不是25%作为违约 因为他们在车里4岁^^

我知道理解起来有点困惑,但这就是我来这里寻求帮助的原因^^

基本上,我的应用程序就是这样工作的,Appstore上的版本已经具备了所有这些功能,但不是很好

以下是我的全数据模型:

我希望你现在能理解我的问题:


我想知道我的模型是否合适,以及如何列出一个活动的所有费用,而不是使用此模型配置的聚会。

好的,我想我听到的是,您的模型看起来不错。如果你想要一份与某项活动相关的所有费用清单,你必须仔细检查客人。以下是伪代码,因为我不太清楚语法

NSMutableArray* expenseList; //This will contain all of the expense objects for a given event
   for Guest* guestObject in myEvent.guests
   {
      for Transaction* transactionObject in guestObject.transactions
      {
          [expenseList addObject:transactionObject.expense];
      }
   }

这一点并不清楚。你能从整体上谈谈申请的目的吗?这可能有助于人们正确理解你的要求,好吧,我将编辑我的问题并解释我的应用程序是如何工作的:@Pinwheeler我编辑了我的帖子:以下是我的理解。是否要为事件实体提供某种访问费用实体的方式?为什么不在活动和费用之间建立一种关系呢?@Pinwheeler这不意味着冗余吗?因为对于一个聚会,我有一个类别和一个杂货店,但不是一个活动我已经解决了我的问题,添加了活动和费用之间的关系:但是这个代码也可以^^^谢谢@Pinwheeler!