我正在尝试从侦听器上的setUser()
访问prePersist()
方法,但是我收到此错误:
FatalErrorException:错误:调用未定义的方法 PL \ OrderBundle \ Entity \ Order :: setUser()in /var/www/html/apps/portal_de_logistica/src/PL/OrderBundle/Listener/OrderHasCommentListener.php 第23行
这是方法:
/**
*
* @param LifecycleEventArgs $args
*/
public function prePersist(LifecycleEventArgs $args) {
$entity = $args->getEntity();
$user = $this->container->get('security.context')->getToken()->getUser();
$entity->setUser($user);
}
为什么它会访问Order
而不是OrderHasComment
?我怎么解决这个问题?我做错了什么?
答案 0 :(得分:1)
如果您只想对" OrderHasComment"实体只是检查类的实例。
if ($entity instanceof OrderHasComment) {
$entity->setUser($user);
}