Dnes jsem pracoval na podobném úkolu a vzpomněl jsem si, že jsem otevřel tento problém. Nevím, od které verze doktríny to funguje, ale právě teď se můžete snadno připojit k dětským třídám v mapování dědičnosti. Takže dotaz jako tento funguje bez problémů:
$query = $this->createQueryBuilder('c')
->select('c')
->leftJoin('MyBundleName:ChildOne', 'co', 'WITH', 'co.id = c.id')
->leftJoin('MyBundleName:ChildTwo', 'ct', 'WITH', 'ct.id = c.id')
->orderBy('c.createdAt', 'DESC')
->where('co.group = :group OR ct.group = :group')
->setParameter('group', $group)
->setMaxResults(20);
Spustím dotaz v mé nadřazené třídě, která používá mapování dědičnosti. V mém předchozím příspěvku to byl jiný výchozí bod, ale stejný problém, pokud si dobře pamatuji.
Protože to byl velký problém, když jsem s tímto číslem začínal, myslím, že by to mohlo být zajímavé i pro ostatní lidi, kteří o tom nevědí.