在非对象

时间:2015-08-06 22:55:21

标签: php mysql doctrine

当我更新实体类数据时,它会抛出

  

错误:在非对象

上调用成员函数setCondition()

我想将“条件”设置为True。

$em = $this->getDoctrine()->getManager();
$result = $em->getRepository('MyBundle:UserStats')->find(1002);

$result->setCondition(TRUE); // want to set the codition from False to TRUE
$em->flush();

1 个答案:

答案 0 :(得分:2)

您的查找方法返回FALSENULL之类的内容。您需要确定查找方法在找不到该ID的实体时返回的内容,并在尝试使用该实体之前对其进行检查。

$em = $this->getDoctrine()->getManager();
$result = $em->getRepository('MyBundle:UserStats')->find(1002);

if( isset($result) && $result !== false ) {
    $result->setCondition(TRUE); // want to set the codition from False to TRUE
}
$em->flush();