Doctrine 2 / DB设计问题:用户,公司,用户公司参考表,以及当前公司的字段包含在哪里?

时间:2011-06-27 22:32:18

标签: php database database-design orm doctrine

我正在使用Doctrine 2作为我的ORM,对于我的应用程序,我有用户,他们可以与公司建立多对多关系,但用户只能有一个活跃/当前的公司。我的问题是在哪里包括标记用户当前公司的字段。我的想法是有两种选择: 1)在UsersCompanies参考表中添加isCurrent字段。但是,如果我想获得用户当前的公司,我将不得不循环访问用户的UsersCompanies引用并检查每个引用的is_current字段。 2)将current_users_companies_id放在用户的表中,以便可以轻松访问。

与往常一样,我感谢您的时间和投入。

1 个答案:

答案 0 :(得分:2)

好吧,既然用户只能拥有一家当前公司,那么我会认为这是一种特定的一对多关系。因此,最好(也是最简单的:))方法就是在用户对象中使用current_company_id属性。