Doctrine2 - 继承映射,查询子类

时间:2012-03-21 18:22:42

标签: inheritance orm doctrine mapping dql

我已加入表继承(让我们称之为Action),我需要获取满足条件的所有Action记录,但字段是否在子类中?有没有办法在不编写Native Query的情况下访问子类字段,但是使用DQL? (或queryBuilder)?

1 个答案:

答案 0 :(得分:0)

如果您有子类,则可以直接查询该子类。父类的属性将自动继承(duh)。我相信这正是你要找的(基于我如何实现类表继承)。

class User{
  private $id;
  private $username;
}

class Merchant extends User{
  private $bizname;
  private $isActive;
}

现在根据你的说法,如果我必须得到活跃的商家,我会做以下事情,这对我有用:

$qb->select('m.bizname')
   ->from('Merchant','m')
   ->where('m.isActive = :flag')
   ->setParameter('flag',TRUE);