Я пытаюсь создать Entity Listener для запуска, когда я манипулирую сущностью User.
Вот моя конфигурация на данный момент:
сервис.yaml :
user_listener:
class: App\Doctrine\UserListener
tags:
- name: doctrine.orm.entity_listener
entity: App\Entity\User
UserListener.php в src/Doctrine
<?php
namespace App\Doctrine;
class UserListener
{
public function prePersist()
{
dump('test'); die;
}
}
И мой класс сущности пользователя:
/**
* @ORM\EntityListeners({"UserListener"})
* @ORM\Entity(repositoryClass = "App\Repository\UserRepository")
* @UniqueEntity(fields = {"email"}, message = "Il y à déjà un compte existant avec cet email.")
*/
class User implements UserInterface
{
Я получаю эту ошибку:
Entity Listener "App\Entity\UserListener" declared on "App\Entity\User" not found.
Но я нигде не определял Приложение\Entity\UserListener, потому что Слушатель пользователя находится в пространстве имен App\Doctrine...






Я думаю, это потому, что вы объявляете свой userlistener как: @ORM\EntityListeners({"UserListener"})
Попробуйте добавить полное пространство имен, например @ORM\EntityListeners({"App\Doctrine\UserListener"})