教义事件onflush

时间:2012-10-06 13:30:15

标签: php symfony doctrine

类Doctrine \ ORM \ Event \ LifecycleEventArgs有方法getEntity(),用于查看get Entity-> getId();什么对象id被修改。

我使用方法public function onFlush(OnFlushEventArgs $ eventArgs)。如何查看已插入的对象的ID?

 foreach ($uow->getScheduledEntityInsertions() AS $entity) {
        if (!$entity instanceof Modificacion) {
        $modificacion = new Modificacion();
        $modificacion->setFechamod(new \DateTime('now'));          
        $className = join('', array_slice(explode('\\', get_class($entity)), -1));
        $modificacion->setEntidad($className);         
        $modificacion->setIdentificador($eventArgs->getEntity()->getId());//not working
        $modificacion->setTipo('Inserción');
        $securityContext = $this->container->get('security.context');
        $modificacion->setEmpleado($securityContext->getToken()->getUser());
        $modificacion->setInfo('');
        $em->persist($modificacion);
        $classMetadata = $em->getClassMetadata(get_class($modificacion));
        $uow->computeChangeSet($classMetadata, $modificacion);
                        }
                    }

提前感谢。

0 个答案:

没有答案