通过 QueryBuilder leftJoin 进行预加载

Eager loading via QueryBuilder leftJoin

当我写的时候:

$query = $this->employeeRepository->createQueryBuilder('e')
    ->leftJoin('e.department', 'd')
;
return $query->getQuery()->getResult();

我本想急切地得到相关的,但得到的却是代理。

有没有办法强制 Doctrine 急切地适应这种关系without modifying the annotations

您也需要 select 值,例如:

$query = $this->employeeRepository->createQueryBuilder('e')
    ->select("e", "d")
    ->leftJoin('e.department', 'd')
;