iOS核心数据连接2x主明细表

Posted

技术标签:

【中文标题】iOS核心数据连接2x主明细表【英文标题】:iOS core data connecting 2x master detail tables 【发布时间】:2014-02-07 07:08:22 【问题描述】:

我在将核心数据添加到具有 2 个主从表的项目时遇到问题:Master-A、Detail-A;大师-B,细节-B。 Master-B 列出了唯一属于 Master-A 中的行的项目。它是从 A 到 B 的一对多关系,以及从 B 到 A 的一对一、可选关系。否则,使用详细信息披露按钮从 Master 表转到 Detail 表。

我使用故事板和展开转场来连接表格。在尝试添加核心数据之前,表格工作正常,我能够向每个主详细信息添加/编辑项目。

我添加了核心数据,可以让 Master-A 和 Detail-A 将数据保存到 sqlite 文件。我的问题是在 Master B 文件中添加数据并使用 xcdatamodeled 文件中设置的关系将数据连接到 Master A 行。如果我将关系设置为可选,我可以存储 B 项的数据,但所有 A 项都会出现相同的 B 时间。如果我将关系设置为非可选,则会收到 1570 错误,指出缺少必需的关系或属性。

我应该使用 CoreDataGeneratedAccessors 吗?还是我应该使用匹配谓词?或者 …。

对不起 - 我真的很陌生,很迷茫。我需要一些帮助才能找到正确的方向。我更喜欢使用情节提要,因为我对此很陌生,并且看不到以编程方式创建视图控制器可以解决问题的地方。大多数具有关系的核心数据教程都非常简单和/或不使用表格。任何帮助将不胜感激。

【问题讨论】:

看看这里的示例应用程序,它们具有公司->>员工主/从关系。您需要在 B arrayController 上设置内容集和/或在创建 B 对象时设置其主对象。 ossh.com.au/design-and-technology/software-development/… 【参考方案1】:

这里有一个相当大的脱节。 Core Data 是您的模型,而您正在谈论视图控制器。当您一起使用这些概念时,其中一个并不会真正影响您的思维方式。

视图控制器显示模型中的数据。作为开发人员,您可以定义该行为的工作方式,是的,您可以使用故事板。

你的模型是什么样的?可以发个截图吗?

通常,当您在情节提要的情况下从一个“主控”移动到另一个“主控”时,您将在 -prepareForSegue:identifier: 方法中使用依赖注入将所需信息传递给下一个视图控制器进行显示。再加上NSFetchedResultsController 的实例,您可以显示模型中的数据。

【讨论】:

【参考方案2】:

以下链接应将您带到项目的精简版本。我按照 Kevin McNeish 的 Book 3: Navigating Xcode 5 中使用的核心数据设置进行操作。他没有使用 fetchresultscontroller - 也许这就是我应该做的,但我可以得到一个简单的主细节项目来工作。只是当我有多个主从关系时,我才会遇到问题 - 谢谢。 https://drive.google.com/folderview?id=0ByH8ka19v3sTZ3FHYnZ0WEVBeGc&usp=sharing

【讨论】:

以上是关于iOS核心数据连接2x主明细表的主要内容,如果未能解决你的问题,请参考以下文章

主/明细数据集的请求太多

如何使用 SmartFoxServer 2X 连接 MySQL 数据库?

POWER BI 支持一个报表连接多数据集

SQL如何查询两个表连接明细表结果用分隔符分开?

CAS5.2x单点登录cas服务器连接数据库

如何按照核心数据模式实现左外连接?