Метод Symfony 3.1 EventListener выполняется два раза?

Здравствуйте, я сделал EventListener, чтобы сделать что-то, прежде чем отправить ответ на запрос.
Так что это мой EventListener:

namespace AppBundle\EventListener;

use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
use Symfony\Component\HttpFoundation\Session\Session;
use Doctrine\ORM\EntityManager;

class RequestListener {

private $em;
private $session;

public function __construct(EntityManager $em, Session $session) {
$this->em = $em;
$this->session = $session;
}

public function onKernelController(FilterControllerEvent $event) {
$repo=$this->em->getRepository("AppBundle:FlashMessage");
$repo->addFlashMessage("test","content");
}

}

И добавьте это к моим услугам:

</services>
<service id="app.request.listener" class="AppBundle\EventListener\RequestListener">
<argument type="service" id="doctrine.orm.entity_manager"/>
<argument type="service" id="session" />
<tag name="kernel.event_listener" event="kernel.controller" />
</service>
</services>

Все работает нормально. Но тоже хорошо! Фактически, при каждом запросе от моего веб-браузера в моей таблице базы данных делаются две записи (метод onKernelController, по-видимому, выполняется два раза при каждом запросе). Так почему две записи создаются на каждый запрос?

Редактировать: php bin / console debug: диспетчер событий | grep -i AppBundle
дай мне:

  #1      AppBundle\EventListener\RequestListener::onKernelController()          0

1

Решение

Задача ещё не решена.

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

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

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