Symfony — Зависимости, не внедряемые в мой класс слушателей сущностей

Моя автопроводка не работает для слушателя основного файла.

У меня есть класс сущности File, который использует аннотации для указания слушателя, например:

/**

@Orm\Entity(repositoryClass="root\CoreBundle\Repository\FileRepository")
@Orm\EntityListeners({"root\CoreBundle\EventListener\Entity\FileEntityListener"})
@Orm\Table(
etc...

Класс FileEntityListener начинается следующим образом:

class FileEntityListener
{
private $encoderFactory;
private $logger;

public function __construct(FilesystemMap $filesystemMap, LoggerInterface $logger)
{
$this->setFilesystemMap($filesystemMap);
$this->logger = $logger;
}

Когда включается слушатель, зависимости не внедряются в конструктор слушателя, и я получаю ошибку для конструктора, говоря:

Type error: Too few arguments to function Epcvip\CoreBundle\EventListener\Entity\FileEntityListener::__construct(), 0 passed in /var/www/html/accounting/vendor/doctrine/doctrine-bundle/Mapping/ContainerAwareEntityListenerResolver.php on line 83 and exactly 2 expected

Пакет подключается автоматически, но зависимости не вводятся.

Кто-нибудь знает, почему это не работает? Может быть, небольшой шаг настройки мне не хватает?

3

Решение

Вам нужно пометить слушателя сущности следующим образом в services.yaml:

services:
root\CoreBundle\EventListener\Entity\FileEntityListener
tags:
- { name: doctrine.orm.entity_listener }

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]