我是SWIFT编程新手,想要做一个简单的应用来学习如何使用核心数据并将其绑定到应用中。我已经看过大量的例子,但都看起来很老了。我在XCode 9工作。如何将我的阵列控制器绑定到我的核心数据模型?
我开始使用Core Data的MacOS Cocoa应用程序。我有一个名为“Workout”的简单实体,包含4个属性date,seconds,sport和rpe。
然后我在视图控制器场景下添加了一个数组控制器。我添加了一个将数组控制器设置为数据源的表视图。我添加了按钮来添加和删除链接到阵列控制器添加和删除方法。
我想我现在需要做的就是将数组控制器绑定到我的核心数据模型的managedObjectContext。这可以在AppDelegate中找到。但是,当我选择阵列控制器并转到绑定并选择参数时,唯一要绑定的选项是“视图控制器”和“共享用户默认控制器”。我选择了视图控制器,但无法找出模型关键路径来链接到我的数据模型。
我觉得我必须错过一些明显的东西。我觉得必须有一种方法来绑定到AppDelegate或从视图控制器的模型关键路径,但我无法弄清楚。任何帮助非常感谢。
感谢您的快速响应。我把下面的代码放在视图控制器中,因为我的AppDelegate没有managedObjectContext参数:required init?(coder:NSCoder){self.managedObjectContext =(NSApp.delegate as!AppDelegate).persistentContainer.newBackgroundContext() super。 init(编码器:编码器) }。仍然收到错误:[ valueForUndefinedKey:]:此类不是关键字managedObjectContext的编码兼容的值。 –
我更新了答案,以考虑“NSPersistentContainer”语法并修复KVC问题 – vadian
谢谢。多数民众赞成在帮助我,因为我使用.newBackgroundContext(),而不是.viewContext –