【问题标题】:Core Data: Cascading 1:1 Relationships核心数据:1:1 级联关系
【发布时间】:2015-07-22 23:52:34
【问题描述】:

场景:级联 1:1 关系如下图所示。

我只想根据 userID 字段在几个实体之间建立反向关系。

问题:
1)关系如何知道要链接到哪个字段?
我所做的只是指出目标并给关系起一个独特的名称。
如果关系独立于提供的用户 ID,那么我认为这样的字段是多余的;对吗?

2) 您会注意到我需要两 (2) 个关系:userID 和 userID2。
本质上,我只想跨文件链接所有常见的 userId 值。这是正确的设置吗?

【问题讨论】:

    标签: core-data


    【解决方案1】:

    Core Data 不是关系数据库,因此您不需要特定字段来创建对象之间的关系。

    通常您使用关系来模拟对象上的属性。

    如果您希望UserConfigurationsUserCredentials 等与User 相关联,那么您应该在User 和每个用户特定对象之间创建关系。

    然后您可以像这样访问用户配置:

    user.configurations
    

    如果您设置了 Core Data 推荐的 inverse 关系,您还可以从 UserConfigurations 对象访问 User。这使您可以轻松访问对象图的其他部分,例如您可以从用户配置中访问用户事件:

    configuration.user.events
    

    这样您就不需要与用户相关的不同对象之间的关系。

    您的数据模型应如下所示:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-12
      • 1970-01-01
      相关资源
      最近更新 更多