Doctrine2 - Отображение наследования, запрос подклассов - PullRequest
7 голосов
/ 21 марта 2012

Я присоединился к таблице наследования (давайте назовем это Action), и мне нужно получить все записи Action, которые удовлетворяют условию, но поля находятся в подклассах?Есть ли способ получить доступ к полям подкласса без написания собственного запроса, но использовать DQL?(или queryBuilder)?

1 Ответ

0 голосов
/ 09 апреля 2012

Если у вас есть подкласс, вы можете напрямую запросить этот подкласс. Свойства родительского класса будут автоматически унаследованы (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);
...