Doctrine использует прокси-объекты для представления связанных объектов, чтобы облегчить ленивую загрузку. Это действительно классная функция, но она вызывает проблему с чем-то, что я пытаюсь выполнить.
Я настроил свой пользовательский объект так, чтобы все они были связаны с другим объектом, который я буду называть городом. Это соотношение работает нормально.
У меня есть форма, которую мой пользователь заполняет для создания другого объекта, улицы. Улица также связана с объектом города. Вместо того, чтобы мой пользователь выбирал город, когда он заполняет форму, я хочу автоматически установить ее, прежде чем я сохраню объект в моей базе данных.
Я попытался использовать $event->setCity($user->getCity())
, но поскольку $user- > getCity() возвращает прокси-объект, это порождает ошибку. Есть ли функция, которую я могу вызвать из прокси-объекта, чтобы получить реальный?
Примечание. Я знаю, что могу создать пользовательский запрос с соединением, чтобы заставить доктрину фактически загружать связанный объект, но так как это пользователь (с помощью FOSUserBundle), который будет трудно выполнить правильно.