Отключить ленивую загрузку Doctrine 2 при использовании JMS Serializer?

Я использую Doctrine 2 ORM в своем проекте Zend, и в нескольких случаях мне нужно сериализовать свои сущности в JSON.

ATM я использую Querybuilder и присоединяюсь ко всем нужным мне таблицам. Но мой сериализатор заставляет доктрину лениво загружать каждую связанную сущность, что приводит к довольно огромным объемам данных и провоцирует рекурсию.

Теперь я ищу способ полностью отключить ленивую загрузку Doctrines.

Мой способ выбора данных был бы следующим:

$qb= $this->_em->createQueryBuilder()
            ->from("\Project\Entity\Personappointment", 'pa')
            ->select('pa', 't', 'c', 'a', 'aps', 'apt', 'p')
            ->leftjoin('pa.table', 't')
            ->leftjoin('pa.company', 'c')
            ->leftjoin('pa.appointment', 'a')
            ->leftjoin('a.appointmentstatus', 'aps')
            ->leftjoin('a.appointmenttype', 'apt')
            ->leftjoin('a.person','p')

Я хотел бы, чтобы мой набор результатов содержал только выбранные таблицы и ассоциации.

Любая помощь будет принята с благодарностью.

15
задан fvu 13 June 2015 в 17:50
поделиться