小编Mat*_*hew的帖子

导入核心数据时建立关系?

我有一个名为importMoc的内存管理对象上下文,用于导入记录(例如员工).我已经解析了一个文件并在importMoc中设置了雇员对象,但有一个非常重要的例外.用户确认他们想要处理%d名员工但我无法弄清楚如何或何时设置员工的"父母"关系(例如设置他们的部门).

为了我的目的,他们将全部导入到同一部门(用户已经隐式选择).

显然我不能在两个上下文中建立关系,所以我:

  1. 在importMoc中创建一个部门,然后当我合并更改时,将"导入"部门与"真实"部门合并?
  2. 2)合并员工,然后获取所有刚刚进口的员工(不知何故!!!)然后设置他们的部门?
  3. 3)我忽略了一些其他解决方案?

这似乎是一个简单的问题,但出于某种原因(懒惰?疲倦?愚蠢?)我无法弄清楚如何去做!到目前为止,我所尝试的一切似乎都过于复杂和复杂!

提前致谢!

import cocoa persistence core-data

6
推荐指数
1
解决办法
935
查看次数

从阵列控制器中删除实体时如何删除实体?

我在托管对象模型中有一个实体(例如Employee),它与另外两个实体(例如Department和Team)相关.这两种关系都是一对多的(即员工必须有一个部门和一个团队,团队和部门有很多员工).这两者可能重叠也可能不重叠(例如,团队可能由来自人力资源,会计和IT的员工组成,或者可能由一个部门的几名员工组成).

Department <-->> Employee <<--> Team    
Run Code Online (Sandbox Code Playgroud)

我有两个NSArrayControllers为两个NSTableViews提供数据,一个Department表和一个Team表.员工可以在部门之间和团队之间移动而没有任何问题,但我不确定如何删除(解雇)员工.

如果我向其中一个阵列控制器发送一条删除消息,则该员工将被从团队中取出(例如),但留在部门中且对象图形处于不一致状态.即使我在两个控制器上调用remove动作,对象也不会被删除 - 它是孤立的,只是挂在空中.

最初我将部门和团队关系(Employee实体)设置为Nullify的删除规则,但即使将一个或两个更改为级联也无济于事.

我是否需要覆盖阵列控制器上的remove:action以实际删除员工,或者我是否遗漏了一些非常明显的内容?

cocoa core-data nsarraycontroller cocoa-bindings

4
推荐指数
1
解决办法
316
查看次数