我正在尝试构建一个基于文档的啤酒审查应用程序,允许您输入笔记。我在 Core Data 中构建了模型,在 Interface Builder 中构建了视图。在一些基于 Xcode 3 的教程之后,我被告知将新的 NSArrayController 连接到文件所有者的 managedObjectContext。如果我尝试在 Xcode 4 中执行此操作,则会在 NSArrayController 的检查器中的“模型键路径”旁边出现一个带圆圈的感叹号。
我实际上可以在 Xcode 3 的 Interface Builder 中加载 .xib 文件,建立连接,然后在 Xcode 4 中构建它并运行,但每个字段都会引发验证错误。
该模型有一个名为 Scoresheet 的实体,它有一个名为 date 的属性,它是一个 NSDate。但是如果我将它链接到 NSDatePicker 的值并尝试将其保存到磁盘,它会说我有“多个验证错误”。怎么可能?他们都是NSDate,对吧?实际上,我对所有东西的绑定都有同样的问题。我的 UI 对象都不适用于我的模型。
我唯一能想到的是文件所有者和 NSArrayController 之间的连接出了点问题。
此时我还没有编写任何代码,因为我知道我不应该仅仅链接 UI 字段和核心数据。是否因为我使用的是基于文档的应用程序而有所不同?(我也无法让它在单个窗口应用程序中工作。)
“不要使用核心数据”的答案不会有成效。我知道我可以依靠常规数据对象。如果可能的话,我想在 Core Data 的上下文中解决这个问题。
蒂亚!
(更新:这个问题似乎困扰了很多人。我查阅了 Zarra 关于 Core Data 的书、Hillegas 关于 Cocoa 编程的书和两本 O'Reilly 的书。它们似乎都是基于 Xcode 3 的。)