我对如何填充一个绑定到两个独立实体的人的理解是否正确,NSOutlineview
这些NSTreeController
实体之间有关系:
我NSTreeController
有一个 managedObjectContext 绑定到我的appDelegate
. 我Object Controller
为此是一个名为clients的实体。MyNSOutlineViews
tableColumn
绑定到NSTreeController
(和clients)key path
clientCompanyNSOutlineView
,这会用公司名称列表正确填充 my 。
我的第二个实体projects有一个名为projectParent的关系属性,它反向绑定到客户端中的一个名为clientChild的属性。通过这种关系,我希望我的子项由以相关clientCompany作为父项NSTreeController
的相关项目条目组成。
为了尝试这个,我在 my 中创建了clientChild,然后将同一控制器的 my 绑定到我的客户实体的clientChild ,并设置为“已选择”。children
key path
NSTreeController
content set
key path
Controller Key
这种方法和各种组合似乎不起作用并产生不同的错误。只有当我省略了最后一个 ' content set
' 绑定步骤时,程序在启动时运行时不会出现错误,并且在大纲视图条目旁边有打开/关闭图标,这表明它像我想要的那样填充。在尝试打开其中一个条目时,它会产生一个错误,提示我的项目实体不符合我的clientChild属性的 KVC。我一遍又一遍的绑定,似乎找不到问题。