Как ограничить получение поля (например, пароля) в Symfony 4? - PullRequest
0 голосов
/ 12 мая 2018

Использование Symfony 4. Мне нужно получить записи Trader и Wallet из базы данных.Используя запрос:

$this->_em->getRepository('App:Trader')->createQueryBuilder('t')
        ->select('t as trader', 'w as wallet')
        ->leftJoin('App:Wallet', 'w', Join::WITH, "w.trader=t.id");

В результате я получаю также все поля сущностей трейдера и кошелька.Я не хочу показывать трейдеру password.

Как получить тот же результат, но без поля password?

1 Ответ

0 голосов
/ 12 мая 2018

Полагаю, вам нужно явно указать нужные поля (и использовать ключевое слово partial, если хотите получить его как объект сущности).

$fields = 'partial t.{id, name}, partial w.{id, balance}'; // guessing the columns

$this->_em->getRepository('App:Trader')->createQueryBuilder('t')
    ->select($fields)
    ->leftJoin('App:Wallet', 'w', Join::WITH, "w.trader=t.id");

Здесь документация по ключевому слову partial.

...