построитель запросов выбирает id из leftJoin - PullRequest
2 голосов
/ 04 августа 2011

У меня есть поле выбора, которое выбирается из сущности, и я хотел бы полностью настроить свой выбор, выбрав таблицу, из которой выбирается идентификатор (здесь я хотел бы выбрать t.id вместо tl.id в качестве значения выбора)

return $er->createQueryBuilder('tl')
    ->addSelect('l')
    ->addSelect('t')
    ->leftJoin('tl.lang', 'l')
    ->leftJoin('tl.type', 't')
    ->where('l.isDefault = 1')
    ->orderBy('tl.name', 'ASC');

Из-за своих таблиц я не могу просто получить таблицу t, я должен использовать tl

Ответы [ 2 ]

1 голос
/ 07 августа 2011

Вам не нужно устанавливать другой псевдоним для вашего столбца. Это будет гидратировано как столбец связанной сущности.

1 голос
/ 05 августа 2011

Ваш запрос не соответствует синтаксису, определенному в Doctrine 2 QueryBuilder: http://www.doctrine -project.org / docs / orm / 2.0 / en / reference / query-builder.html

Ваш запрос может работать в Doctrine 1.2, но в Doctrine 2 вы должны построить свой запрос в соответствии с синтаксисом, определенным в ссылке, которую я разместил выше.

Например, ->addSelect('l') больше не используется в Doctrine 2. Это стало ->add('select', 'l').

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