Symfony ассоциации гидратации - PullRequest
0 голосов
/ 07 ноября 2018

Я начал использовать Кэширование Symfony и предпочел FilesystemCache, хотя он самый медленный, но не требует никаких изменений в php.ini, насколько я знаю.

У меня есть форма, которая заполняет огромный список клиентов, и это занимает много времени для загрузки. Я рассматриваю ленивую нагрузку, но количество времени ожидания одинаково. Итак, сейчас я пытаюсь кешировать.

Мне удалось успешно кэшировать результат доктрины, сделать это довольно просто, следуя документации. В основном сделайте запрос, затем сохраните массив в файл кэша. Symfony даже сохраняет объекты, чего я и хочу.

Единственная проблема заключается в том, что ассоциации не гидратированы, поэтому они сохраняются как нулевые. Внутри объекта Client у меня есть это свойство:

/**
     * @ORM\OneToOne(
     *     targetEntity="Address", cascade={"persist"}
     * )
     * @ORM\JoinColumn(referencedColumnName="id", nullable=true)
     */
    private $address;

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

...