Мне нужно украсить 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"
Чего мне не хватает? Спасибо