【问题标题】:Relationships in CoreDataCoreData 中的关系
【发布时间】:2011-04-23 17:23:48
【问题描述】:

我对核心数据很陌生,我已经阅读了 Apple 开发网站上的几篇文章,现在对将它与一个实体一起使用感到有些自在。

现在我正在开发一款向用户推荐食谱的应用。

数据设计有点像这样我有这些实体

物品

储藏室

&

食谱

.

关系如下:

许多食品储藏室的物品

多个配方的项目

逻辑是从食品储藏室获取物品并将它们与食谱中的值进行比较,然后向用户推荐食谱。

我对如何去做有点困惑。 我的数据设计好吗。如果以防万一..,我需要如何更改它? & 访问储藏室对象托管实例是否会自动从 Items 表中获取相应的项目...?并且当我访问食谱时同样会获取食品储藏室...?

cmets、建议、coredata 学习资源的指针将不胜感激。

谢谢

【问题讨论】:

    标签: iphone objective-c cocoa-touch core-data


    【解决方案1】:

    您可以查看来自 Apple 网站的 example (iPhoneCoreDataRecipes)。他们还在 Core Data 中存储和引用配方数据。

    【讨论】:

      【解决方案2】:

      您的数据模型应反映您尝试模拟的真实世界对象、事件或条件。

      在这种情况下,听起来您正在模拟一个厨房,其中只有一个储藏室,储藏室中有许多物品,然后是一本使用这些物品的食谱书。因此,在伪代码中,您的对象模型应该类似于:

      Item{
          pantry<<-->Pantry.items
          recipies<<-->>Recipie.items
      }
      
      Pantry{
          items<->>Item.pantry
      }
      
      Recipe{
          items<<-->>Recipie
      }
      

      请注意,项目与配方的关系是对多和对多的,因为相同的项目可以出现在许多配方中,并且许多不同的配方可以使用相同的项目。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-06-29
        • 1970-01-01
        • 2012-01-01
        • 2012-04-09
        • 2012-02-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多