I am mapping an idea for a relationship using Core Data.
I have an Employer
entity who has a many-to-many relationship with Employees
. Basically, an employee can work for multiple employers, and an employer can have multiple employees.
The problem I'm facing is, I'm not sure how to manage the contracts between employees and employers.
As an employee can work for either 1 or many employers, they would naturally have a contract for each employer they work for (complete with salary, duration) and a list of dates when they are working for a specific employer.
My question is - how to manage the relationships between Contracts
, ContractDates
with Employers and Employees?
Thank you.
Image follows.
in the real world you have a contract between an employer and an employee. So why not do the same in core data?
Use a junction table.
That is, the contracts table refers both to Employers and Employees, linking them together. It also contains information on contracts. This way, the contract applies to the relation between employer and employee, which is exactly what you want.
来源:https://stackoverflow.com/questions/4967843/core-data-managing-employee-contracts-in-a-many-to-many-relationship