У меня есть партнерская сущность с двумя отношениями:
/**
* @var PartnerSettings
* @ORM\OneToOne(targetEntity="PartnerSettings", mappedBy="partner", cascade={"persist", "remove"}, fetch="LAZY")
*/
private $settings;
/**
* @var PartnerRating
* @ORM\OneToOne(targetEntity="PartnerRating", mappedBy="partner", cascade={"persist", "remove"}, fetch="LAZY")
*/
private $rating;
... getRepository (Partner :: class) - ›findAll () работает правильно, был сделан один запрос, но когда я создаю queryBuilder:
return $this->createQueryBuilder('p')
->getQuery()
->getResult();
doctrine делает 31 запрос (у меня 10 партнеров) ... на панели инструментов отладки я видел выборочные запросы к настройкам и рейтингу для каждого партнера. Я не хочу этого в данном случае. Кроме того, в каждом конструкторе запросов, где я использовал присоединение к партнерам, также выбираются настройки и рейтинг.
отвечать
->setHint(Query::HINT_FORCE_PARTIAL_LOAD, true);
сделал работу