Symfony Validator не может видеть значения свойств для Entitites, загруженных из Doctrine - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть объект, который загружается из базы данных с использованием Doctrine.

Этот объект имеет Пользовательский тип отображения для свойства.

В некоторых случаях Doctrine будетвернуть прокси для этой сущности, и когда я передаю это в Symfony Validator, он неправильно сообщает, что свойство пустое.

Я полагаю, это потому, что валидатор использует отражение для доступа к свойству напрямую (а не через получатель)).Поскольку метод получения не используется, прокси-серверу не предлагается загрузить значение для свойства, и поэтому средство проверки видит его пустым.

Существует ли хитрость, чтобы гарантировать, что средство проверки Symfony не будет отключенопроверка прокси-сервера?


Я не хочу настраивать сущность для постоянной загрузки.Мой текущий обходной путь - проверить, является ли объект экземпляром \Doctrine\ORM\Proxy\Proxy, а затем вызвать \Doctrine\Common\Persistence\Proxy::__load(), чтобы убедиться, что все свойства загружены.

...