хороший способ сделать это - использовать обработчик событий доктрины:
файл service.yml
services:
my_report_listener :
class : App\EventListener\ReportListner
arguments: ['@security.token_storage']
tags:
- { name: doctrine.event_listener, event: prePersist }
класс слушателя вашего события:
class ReportListner {
private $tokenStorage;
public function __construct(TokenStorageInterface $tokenStorage)
{
$this->tokenStorage= $tokenStorage;
}
public function prePersist(LifecycleEventArgs $args)
{
$entity = $args->getObject();
if($entity instanceof Report){
$current_user = $this->tokenStorage->getToken()->getUser();
}
}
}