Doctrine наследование карты классов и соединение - PullRequest
0 голосов
/ 18 марта 2020

У меня есть 2 сущности (ProductX и ProductY), унаследованные от Product (тип наследования: JOINED, с Дискриминатором). Мне нужно добавить условие в поле ProductX или productY. Но построитель запросов не показывает эти объекты.

Я пытаюсь: $queryBuilder->leftJoin('App\Entity\ProductX', 'productX', 'WITH', 'o.id = productX.id');

Но в этом случае сгенерированный DQL будет:

LEFT JOIN ( product_x p8_ INNER JOIN product p9_ ON p8_.id = p9_.id ) ON (p0_.id = p9_.id)

вместо:

LEFT JOIN product_x p8_ ON p0_.id = p8_.id

Есть идеи сделать это?

1 Ответ

0 голосов
/ 18 марта 2020

Вы можете просто сделать что-то подобное, я думаю:

$queryBuilder->leftJoin('App\Entity\ProductX', 'productX');

Это вернет то, что вы хотите, другие аргументы, которые обычно используются для пользовательских отношений

Подробнее здесь: https://www.doctrine-project.org/projects/doctrine-orm/en/2.7/reference/query-builder.html

Надеюсь, это поможет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...