0

我在表单中有一个带有价格属性的实体。在更新中,我想取消对此实体的更改。

这是我在 preUpdate 事件监听器中的代码:

if($entityManager->contains($entity)) {
    $entityManager->detach($entity);
    $uow  = $entityManager->getUnitOfWork();
    $meta = $entityManager->getClassMetadata(get_class($entity));
    $uow->recomputeSingleEntityChangeSet($meta, $entity);
}

但在测试中收到此错误消息:

1) WebFactory\PriceListBundle\Tests\Entity\PriceListTest::testCreateProduct Doctrine\ORM\ORMInvalidArgumentException: Entity WebFactory\Bundle\PriceListBundle\Entity\PriceList@000000005f6fc4da0000000028ff97b1 不受管理。如果实体从数据库中获取或通过 EntityManager#persist 注册为新实体,则该实体被管理

4

0 回答 0