对此方案进行建模的最佳做法



我有一个从FOSUserBundle扩展fos_user类的类。 每个用户都有一些角色。 如果用户具有角色"基本",则他与实体条目具有一对多关系(一个基本用户具有多个条目(。 如果用户具有角色"MASTER",则他与实体房屋具有多对多关系(许多主用户有许多房屋(。

我这样做了:

/**
* @ORMEntity
*/
class User extends BaseUser
{
/**
* @ORMId
* @ORMColumn(type="integer")
* @ORMGeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORMManyToMany(targetEntity="House", inversedBy="users")
*/
protected $houses;
/**
* @ORMOneToMany(targetEntity="Entry", mappedBy="user")
*/
protected $entries;
}  

但这听起来并不好。

是否有此方案的设计模式

正如@lxg所写的,一种可能的模式是单表继承。 你可以在这里看一个例子。

最新更新