Я создал черту, чтобы добавить два свойства / столбца «user_created» и «user_updated» в каждую сущность (в той же философии, что и черта «Timestamptable», найденная в Интернете)
<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\Security;
use Symfony\Component\Security\Core\User\UserInterface\UserInterface;
trait UserTrack
{
/**
* @ORM\ManyToOne(targetEntity=User::class)
*/
private $createdUser;
/**
* @ORM\ManyToOne(targetEntity=User::class)
*/
private $updatedUser;
private $security;
private $me;
public function __construct(Security $security, UserInterface $user)
{
$this->security = $security;
// $this->me = $this->getUser()->getId(); //ERROR
// $this->me = $this->security->getUser()->getId(); //ERROR
// $this->me = $user->getId(); //ERROR
}
/**
* @ORM\PrePersist
*/
public function setCreatedUserAutomatically()
{
if ($this->getCreatedUser() === null) {
$this->setCreatedUser($this->me);
}
}
/**
* @ORM\PreUpdate
*/
public function setUpdatedUserAutomatically()
{
$this->setUpdatedUser($this->me);
}
}
Как вы можете видите, я добавил метод "construct", пытаясь получить мой объект User, но он не работает ..
Не могли бы вы мне помочь?
Спасибо!