如何强制Doctrine2 / Symfony2 getter获取更新数据?

时间:2013-06-01 23:29:31

标签: symfony doctrine-orm

让我们在symfony2命令中考虑如下代码。我正在使用这个虚拟代码来测试我的场景:

$em = $this->getContainer()->get("doctrine")->getManager();

$user = $em->getRepository('FOSUserBundle:User')->findOneBy(array('username' => 'admin'));

do
{
    echo $user->getFirstname(); // How to force getFirstname to fetch the updated value?
    sleep(3);
}
while(true);

我的问题是,如果我更改数据库中的用户Firstnameecho仍会显示旧的Firstname,我必须重新启动脚本以显示新的Firstname }。

如何强制$user->getFirstname();获取并获取更新数据?

1 个答案:

答案 0 :(得分:2)

使用相同的代码,假设您仍然拥有实体经理$em,请尝试使用此

$em->refresh($user)