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主明细表的主要内容,如果未能解决你的问题,请参考以下文章