Мне нужно украсить Symfony EntityManager и получить доступ к свойству, которое я добавляю в него из ouside, но оно всегда говорит, что это неопределенное свойство.
Это конфиг:
app.decorated.doctrine.orm.default_entity_manager:
class: App\Decorator\EntityManager
public: false
decorates: "doctrine.orm.default_entity_manager"arguments:
- "@app.decorated.doctrine.orm.default_entity_manager.inner"- '%photo_directory_absolute%'
Так, например, я передаю значение «% photo_directory_absolute%»
Это часть декоратора:
namespace App\Decorator;
class EntityManager extends EntityManagerDecorator
{
public $photoDir;
public function __construct(EntityManagerInterface $wrapped, string $photoDir)
{
parent::__construct($wrapped);
$this->photoDir = $photoDir;
}
Тогда я хочу получить значение ‘photoDir’ из Hydrator
namespace App\Hydrator;
class UserAppHydrator extends ObjectHydrator
{
protected function hydrateRowData(array $data, array &$result)
{
$hydrated_result = array();
parent::hydrateRowData($data, $hydrated_result);
die(var_dump($this->_em->photoDir));
И это показывает мне ошибку:
"Notice: Undefined property: Doctrine\\ORM\\EntityManager::$photoDir"
Чего мне не хватает? Спасибо
Задача ещё не решена.
Других решений пока нет …