使用一对一关系时, cocoa 核心数据应用程序在插入时崩溃

标签 cocoa core-data cocoa-bindings

我有一个带有 2 个实体的简单 cocoa 应用程序。它们之间具有一对一的关系。

在我唯一的窗口中,我有 2 个 NSTableView,一个显示客户,另一个显示他的地址。如果我以一对多的方式更改两个实体之间的关系,那么我的应用程序中的所有内容都可以正常工作(添加、编辑、删除)。

但是,如果我将两个实体之间的关系一对一更改,我可以插入客户,但是当我尝试在第二个 NSTableView(地址)中插入记录时,应用程序崩溃并出现以下错误:

2015-10-09 03:50:28.357 TwoEntitiesRecord[1793:56879] -[__NSSetM ManagedObjectContext]:无法识别的选择器发送到实例 0x608000040f90 2015-10-09 03:50:28.357 TwoEntitiesRecord[1793:56879] -[__NSSetM ManagedObjectContext]:无法识别的选择器发送到实例 0x608000040f90 2015-10-09 03:50:28.361 TwoEntitiesRecord[1793:56879] (

我不会发布该应用程序的任何代码,因为我没有编写代码。这一切都是通过绑定(bind)完成的。

任何帮助将不胜感激。

最佳答案

您的绑定(bind)不正确。从错误消息中可以看出,您正在向 NSSet 询问其 ManagedObjectContext。 NSSet 没有托管对象上下文。

所以,看看你的绑定(bind)。其中一个可能绑定(bind)到表示关系的属性,因为这将是 NSSet 的实例。您的绑定(bind)可能会要求 MOC。

关于使用一对一关系时, cocoa 核心数据应用程序在插入时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33028251/

相关文章:

iphone - 多个静态库、swizzling 和dispatch_once

cocoa - 鼠标事件位置似乎不正确

objective-c - 标准(32/64 位通用)、WebKit、Flash 插件和 Leopard

ios - 如何将数据保存到模型coredata

ios - 对许多请求进行排队,然后根据添加的时间进行排序,但项目最终会根据从请求中收到的时间进行排序

ios - Xcode:momc 无法在旧项目中编译 .mom 文件

macos - OSX Cocoa Core-蓝牙委托(delegate)和 UI 更新线程安全

cocoa - 有没有好的 cocoa 库同时包含 salt 和 IV AES 加密?

cocoa - NSOutlineView 和 NSTreeController 可以处理数千个对象吗?

cocoa - 使用字符串值填充 NSPopUpButtonCell