Доктрина FETCH и КРИТЕРИИ о коллекции Entity, ни работа - PullRequest
0 голосов
/ 05 февраля 2019

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

Во-первых, объект ScheduleObject, расширяющий еще один

    /**
     * @ORM\Entity(repositoryClass="App\Repository\ListMarketRepository")
     */
    class MarketSchedule extends ListMarket implements ...
    { 

        /**
         * @ORM\OneToMany(targetEntity="App\Entity\Link\ScheduleLink", mappedBy="market")
         */
        private $scheduleLinks;
.....OTHER FIELDS

    }

AND



        /**
         * @ORM\Entity(repositoryClass="App\Repository\ScheduleLinkRepository")
         * @ORM\HasLifecycleCallbacks()
         */
        class ScheduleLink
        {
            use TimestampEntity;

            /**
             * @ORM\Id()
             * @ORM\GeneratedValue()
             * @ORM\Column(type="integer")
             * @Groups({"model", "event"})
             */
            private $id;

            /**
             * @ORM\ManyToOne(targetEntity="App\Entity\Market\MarketSchedule", inversedBy="scheduleLinks")
             * @ORM\JoinColumn(nullable=false, referencedColumnName="id", name="listMarketId")
             */
            private $market;


            /**
             * @ORM\Column(type="date", nullable=true)
             */
            private $staticDate;

            /**
             * @ORM\Column(type="smallint", nullable=true)
             */
            private $dayOfWeek;

             OTHER FIELDS....

        }

Я так много пытался и без использования ScheduleLinkRepository , чтобы получить результат ScheduleLinks в ассоциации, НИЧЕГО НЕ РАБОТАЕТ ЗА РЕПО !! !!,Это прекрасно работает, пока я не попытаюсь выполнить Criteria :: expr () для сортировки коллекции;

$criteria = Criteria::create()
            ->where(Criteria::expr()->isNull('staticDate'));
$new = $schedules->matching($criteria);

Вышеупомянутое выражение обычно верно примерно в 99% всех запросов, хотя я еще не получилмассив из $ расписаний или $ new переменных с правильными результатами.

Мне нужно 1. Использовать отношения вместо репозитория в контроллере и получить коллекциюкак это происходит в Twig 2. (ИЛИ более важно) Получить критерии для работы в этом случае.Я еще не использовал критерии для коллекции, и она работает.Это действительно не весело и кажется простым на практике, но терпит неудачу очень долго.

...