我有一个实体Account
和两个继承了单表继承的表:Client
和Administrator
。
我有一个使用Account
表的登录表单。用户登录后,我会收到如下信息:
$account = $this->em->getRepository ( 'Entities\Account' )
->findOneByEmail ( $email ) );
我的帐户没有问题,但问题是:如何确定用户是客户还是管理员?我知道我可以get_class
看看它正在使用哪个类,但我不认为这是正确的方法。有帮助吗?谢谢!
答案 0 :(得分:0)
如果您不想使用get_class 你会做这样的事情
class Client extends Account
{
protected $discr = 'client';
...
}
class Administrator extends Account
{
protected $discr = 'administrator';
...
}
对象中的字段(不在数据库中)
并在Acount类
中创建getType()方法