【问题标题】:Core data: Managing employee contracts in a many-to-many relationship?核心数据:以多对多关系管理员工合同?
【发布时间】:2011-02-11 10:18:27
【问题描述】:

我正在使用 Core Data 映射关系的想法。

我有一个Employer 实体,它与Employees 具有多对多关系。基本上,一个雇员可以为多个雇主工作,一个雇主可以有多个雇员。

我面临的问题是,我不确定如何管理雇员和雇主之间的合同。

由于员工可以为 1 个或多个雇主工作,他们自然会为他们工作的每个雇主签订一份合同(包括工资、工期)以及他们为特定雇主工作的日期列表。

我的问题是 - 如何管理ContractsContractDates 与雇主和雇员之间的关系?

谢谢。

图片如下。

【问题讨论】:

  • 顺便说一句,如果您创建多对多关系,我建议在关系名称中使用复数。当您编写代码时,您可以从名称中看出这是一对多还是一对一的关系。所以你的 Employee->>Employer 关系应该称为雇主
  • 好的,谢谢,非常感谢!

标签: objective-c core-data many-to-many entity-relationship contract


【解决方案1】:

在现实世界中,雇主和雇员之间存在合同。那么为什么不在核心数据中做同样的事情呢?

【讨论】:

  • 我同意你的想法,因为它最有意义。
【解决方案2】:

使用junction table

也就是说,contracts 表同时引用 Employers 和 Employees,将它们链接在一起。它还包含有关合同的信息。这样,合同适用于雇主和雇员之间的关系,这正是你想要的。

【讨论】:

  • fluchtpunkt 的答案是联结表吗?此外,在核心数据中将表与实体混淆是不是错的。我总是被它抓住。
  • 是的。这个答案是通用的(并且是正确的),但你不应该从 RDBMS 的角度来考虑 Core Data。
猜你喜欢
  • 2016-06-30
  • 1970-01-01
  • 2011-11-26
  • 2011-02-18
  • 2016-09-08
  • 1970-01-01
  • 2018-11-19
  • 2014-08-13
相关资源
最近更新 更多