Отношение один в QueryBuilder - PullRequest
       7

Отношение один в QueryBuilder

0 голосов
/ 19 февраля 2020

Я пытаюсь сделать запрос с QueryBuilder для удаления уже используемого объекта. Правильный Mysql запрос:

SELECT * FROM token LEFT JOIN att_token ON token.id = att_token.id_token_id WHERE att_token.id_utilisateur_id IS null ORDER BY token.num_serie ASC

Мой QueryBuilder в моем хранилище:

'query_builder' => function (EntityRepository $Token) {
  return $Token->createQueryBuilder('u')
  ->from('App\Entity\AttToken', 'att_token')
  ->LeftJoin('att_token.IdToken','attu')
  ->Where('att_token.IdUtilisateur IS null')
  ->orderBy('u.numSerie', 'ASC');

Но у меня нет результата, нет ошибки. Я не знаю, где моя ошибка ...

У меня есть отношение OneToOne между токеном и объектом AttToken, в AttToken есть описание отношения, но не в объекте Token ...

Если у кого-то есть идея ...

Хорошего дня.

1 Ответ

0 голосов
/ 20 февраля 2020

Я решил это. Я начинаю удалять атрибут IdToken на AttToken. Затем я использую

php bin/console make:entity

Чтобы создать его снова и ответить да на

Do you want to add a new property to Token so that you can access/update AttToken objects from it - e.g. $token->getAttToken()? (yes/no) [no]:

Тогда мой createQueryBuilder выглядит просто как:

->LeftJoin('u.attToken','attu')
->Where('attu.IdUtilisateur IS null')
->orderBy('u.numSerie', 'ASC');

Хорошего дня

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