【问题标题】:CoreData - Modeling mapping tableCoreData - 建模映射表
【发布时间】:2011-12-17 19:57:31
【问题描述】:

我计划使用 CoreData 来为“新闻”iOS 应用建模。这将有许多部分(读取一个 UITabBarItem),其中将包含许多文章(在一个 UITableView 中)。这些文章也可能出现在其他部分。此外,每篇文章的排序顺序也是另一个重要因素。

在数据库术语中我有

  • “文章”表
  • Sections”表和一个
  • “Article_Sections”表将文章映射到具有额外排序字段的部分。

我已经尝试过,但无法在 CoreData 中对此进行建模。我坚持了一个

  • “Section”类与
  • 具有多对多关系
  • “Article”类(与“Section”类具有反向多对多关系)。

但是,我不知道如何得出排序顺序。非常感谢任何有关如何执行此操作的提示。提前致谢。

桑迪普

【问题讨论】:

    标签: ios cocoa-touch core-data iphonecoredatarecipes


    【解决方案1】:

    我不得不停止考虑数据库来解决这个问题。我的解决方案涉及 2 个类:

    • 文章列表

    属性: * 列表名称 * 文章编号 * 排序顺序

    关系: * 文章 ;一对一

    • 文章

    属性: * 文章编号 * ....

    关系: * 列表 ;一对多

    我查询 ArticleList 并在 sortOrder 上排序以获取特定提要/部分的文章列表。然后使用 valueForKeyPath: 获取文章属性(例如标题等)。

    【讨论】:

      【解决方案2】:

      我认为您需要删除 section 和 article 之间的直接关系,只需将 Article_Sections 表中的关系返回到 section 和 article 表。

      【讨论】:

        【解决方案3】:

        您可以添加实体“ArticleSectionPair”作为“Section”和“Article”之间的中介:

        • 属性“sortValue”
        • “section”与“Section”实体的一对多关系(及其反向“articlePairs”)
        • “文章”与“文章”实体的一对多关系(及其反向“sectionPairs”)

        使用属性“sortValue”和th,可以从一个section中获取ArticleSectionPairs的排序集合,并获取[sortedArticlePairs valueForKeyPath:@"article"]的文章。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-12-07
          • 1970-01-01
          • 1970-01-01
          • 2013-04-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多