我正在转向Doctrine ORM。在我们的应用程序中,我们有两个用户可以承担的角色:客户和员工。
以前我们有一个用户表,然后是一个客户表和一个员工表。
用户可以是客户,也可以是员工。用户可以拥有多个员工实例。 (他们同时为多家公司工作。)但是,该用户也可以是客户。所以他们也应该在客户表中有一个条目。
以前我们有这样的关系:
users
- id
company_has_employee
- company_id
- employee_id
employees
- user_id
- other attributes
customers
- user_id
- other attributes
因此,您可以看到用户表中只有一个条目(意味着用户只有一组凭据用于所有角色。)
如何将此功能转换为原则?
我在Doctrine Docs中尝试了Class Table Inheritance,但我觉得这比这更复杂。