duaijiao0648 2014-06-08 21:06
浏览 61
已采纳

Doctrine 2将数据更新到数据库中,但不将数据更新到Entity中

Working on zend framework 2 with doctrine 2.

While unit testing, I use a 'testing database' to add, edit and delete values from.

The issue was that I add a new entity, ok. After I add the new entity, witch works perfecty, i tried to Update the entity.

//set all values
$this->getEntityManager->persist($dataEntity);
$this->getEntityManager->flush()

When I Try to retrieve the updated data using:

    $produtoAcessorioCompareEntity = $this->getEntityManager()->getRepository('Administrador\Entity\ProdutoAcessorio')->findOneBy(array(
        'idProdutoAcessorio' => $produtoAcessorioEntity->getIdProdutoAcessorio()
    ));

But this cached the old data from ADD Method and not updated the data for the new Entity $produtoAcessorioCompareEntity, I got the old values.

When I check the database, the new values are there. So should have one trick to reorganize loaded entities that I'm probably missing.

How can I update the Working Entities After Persist and Flush, to get the new values by $this->getEntityManager->getRepository() instead open a new connection?

  • 写回答

2条回答 默认 最新

  • dtn51137 2014-06-08 21:58
    关注

    $this->getEntityManager()->refresh($entity);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 救!ENVI5.6深度学习初始化模型报错怎么办?
  • ¥30 eclipse开启服务后,网页无法打开
  • ¥30 雷达辐射源信号参考模型
  • ¥15 html+css+js如何实现这样子的效果?
  • ¥15 STM32单片机自主设计
  • ¥15 如何在node.js中或者java中给wav格式的音频编码成sil格式呢
  • ¥15 不小心不正规的开发公司导致不给我们y码,
  • ¥15 我的代码无法在vc++中运行呀,错误很多
  • ¥50 求一个win系统下运行的可自动抓取arm64架构deb安装包和其依赖包的软件。
  • ¥60 fail to initialize keyboard hotkeys through kernel.0000000000