绑定和核心数据:实体 xxx 与键“(null)”的键值编码不兼容

Bindings and Core Data: the entity xxx is not key value coding-compliant for the key "(null)"

我构建了一个小应用程序来了解 macOS 编程。我有几个 table-views,其中一些有 NSPopUpButtonCell.

那些NSPopUpButtonCells随机导致崩溃

2016-07-05 14:45:10.331 TrainingplanMac[94732:35004946] [<TrainingplanMac.Workout 0x6180000a6de0> valueForUndefinedKey:]: the entity Workout is not key value coding-compliant for the key "(null)".
2016-07-05 14:45:10.334 TrainingplanMac[94732:35004946] (
0   CoreFoundation                      0x00007fffa050b4f2 __exceptionPreprocess + 178
1   libobjc.A.dylib                     0x00007fff9a51973c objc_exception_throw + 48
2   CoreFoundation                      0x00007fffa050b439 -[NSException raise] + 9
3   CoreData                            0x00007fff9ebddd91 -[NSManagedObject valueForUndefinedKey:] + 289
4   AppKit                              0x00007fff98d14ed5 -[_NSPopUpButtonPlugin showValue:inObject:] + 734

如果我触摸了情节提要,错误会随机发生。如果我不触及故事板,我可以随心所欲地重建项目而不会出现错误。如果出现错误,我 fiddle 在情节提要中进行了一些设置,并且在几次重建之后它就消失了。此外,并非每次都是同一个实体导致错误。每个 NSPopupButtonCell 都有一个它显示的其他实体,每个 button/entity.

随机出现错误

这很令人沮丧,因为每次我想尝试新事物时我都必须 build/run/fiddle/build/run/fiddle... 直到应用程序 运行.

不知道还有哪些其他信息可能有用。由于没有足够的声誉,我无法嵌入图片。抱歉。

[编辑]

我在一个小项目中从头开始重现了这个问题。我已经在此处提供了该项目:[项目已删除,因为不再需要]。我想我已经根据 Apple 的绑定指南完成了所有操作,但是......:)

删除了图片链接,因为 "Only 2 links limit"。

如果 table 视图是基于单元格的,则您不必绑定内容、选择索引和排序描述符。

来自 NSTableView 绑定的文档:

Typically, the content binding is created automatically when the initial NSTableColumn binding is made, binding to the column's NSArrayController.