Как получить юзера после создания записи?

Добрый день.

Работа ведется под Easy admin. Суть проста. После создания новости ( запись в БД ), требуется обновить некоторые данные в таблице. Делаю так:
/**
 * @ORM\Entity(repositoryClass=OrgNewsRepository::class)
 * @ORM\HasLifecycleCallbacks()
 * @Vich\Uploadable
 */
class OrgNews
{
...
/**
     * @ORM\PrePersist
     */
     public function setValuesAfterCreate()
     {
        $this->updatedAt = new \DateTime('now');
     }
...
}

Помимо обновления поля updatedAt ( я в курсе, что это можно сделать на уровне БД ), требуется также изменить поле AuthorID, подставив ID текущего пользователя. Т.е. нужно получить данные через getUser. Пробовал по примерам, всяко-разно, через сервисы, через внедрение Security, вытался получить Container, а чет пока не получается. При попытке передать любой сервис через конструктор получаю: Too few arguments to function App\Entity\OrgNews::__construct(), 0 passed in C:\inetpub\wwwroot\portal_plus\vendor\easycorp\easyadmin-bundle\src\Controller\AdminControllerTrait.php on line 622 and exactly 1 expected. Чувствую, что все должно быть просто. Кто-нибудь поделится рабочим решением?
Спасибо.
  • Вопрос задан
  • 150 просмотров
Решения вопроса 1
Austin_Powers
@Austin_Powers
Web developer (Symfony, Go, Vue.js)
Создавай Event listener.
Вот пример как передать security token storage.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы