我对核心数据很陌生我在Apples开发网站上阅读了几篇文章&现在使用它与一个实体有点相容。
现在我正在开发一个向用户推荐食谱的应用程序。
数据设计有点像我有这些实体
项目
,
食品储藏室
&安培;
配方
关系如下:
项目到许多食品室
项目到很多食谱
逻辑是从食品储藏室获取物品。将它们与食谱和食谱中的值进行比较然后建议用户食谱。
我对如何去做有点困惑。 我的数据设计没问题。如果是以下情况我该如何更改? &安培;将访问pantry对象托管实例自动从Items表中获取相应的项目...? &安培;同样在我访问食谱时会取出食品室......?
评论,建议,指向coredata学习资源将受到高度赞赏。
由于
答案 0 :(得分:1)
您可以查看Apple网站上的example (iPhoneCoreDataRecipes)。他们还在Core Data中存储和引用配方数据。
答案 1 :(得分:1)
您的数据模型应反映您尝试模拟的真实对象,事件或条件。
在这种情况下,听起来你正在模拟一个带有单个食品室的厨房,食品室中的许多物品,然后是一本使用这些食品的食谱。因此,在伪代码中,您的对象模型应该类似于:
Item{
pantry<<-->Pantry.items
recipies<<-->>Recipie.items
}
Pantry{
items<->>Item.pantry
}
Recipe{
items<<-->>Recipie
}
请注意,配方关系的项目是to-many和to-many,因为相同的项目可以显示在许多食谱中,许多不同的食谱可以使用相同的项目。