【问题标题】:iOS - Core Data Relationship. Mapping table/ many-to-many relationshipiOS - 核心数据关系。映射表/多对多关系
【发布时间】:2012-03-15 23:35:50
【问题描述】:

我目前正在为我的应用程序生成数据模型,在开始实施之前正确设计它非常重要,否则这将是一个大问题。

我的情况是,我有一个实体是 Post。每个帖子都有许多与之关联的Tags。最初,我想在每个帖子中存储一组标签,但后来我意识到这不会被规范化,并且会有重复的数据。因为每个帖子可能有彼此相同的标签。

这导致了Tag 实体的创建。我的问题是如何为这种关系建模?许多帖子与许多标签相关联。每个标签可能与一个或多个帖子相关联。

有什么想法吗?我需要一个映射表,还是 Core Data 处理这个?谢谢。

【问题讨论】:

    标签: ios core-data many-to-many relational-database


    【解决方案1】:

    Core Data 支持多对多关系,因此只要您正确定义模型,这应该不是问题。例如:

    【讨论】:

    • 猜猜我感到困惑的一件事是当我填充数据库时这些是如何表示为 NSManagedObjects 的?因为我会将帖子存储在他们的对象中,但是在设置标签时,我如何能够为一个帖子设置多个标签?以及如何确保我不会使用相同的数据创建两个标签?
    • 我认为您需要花点时间阅读苹果文档“核心数据编程指南”:developer.apple.com/library/mac/#documentation/cocoa/conceptual/…。然后启动dev,然后回去再读一遍。每次阅读时,事情都会变得有意义。
    • @Gobot 你能举例说明如何使用 Core Data 多对多关系吗?通常使用 SQLite,我应该创建另一个表调用 Post-Tag 来表示多对多关系
    • @Gobot,您将如何存储通常包含在 Post-Tag 连接“表”中的属性?例如,您会将标题中的标签偏移信息保存在哪里,基本上是帖子和标签独有的独特属性?
    猜你喜欢
    • 1970-01-01
    • 2016-06-30
    • 1970-01-01
    • 1970-01-01
    • 2011-02-18
    • 2016-09-08
    • 1970-01-01
    • 2014-08-13
    相关资源
    最近更新 更多