我是Doctrine的新手,我似乎找不到答案。
我正在使用
来将新创建的对象保存到数据库(等同于SQL INSERT查询)。 $this->getEntityManager()->persist($category);
$this->getEntityManager()->flush($category);
要删除一个(相当于SQL DELETE查询),我正在使用
$this->getEntityManager()->remove($category);
$this->getEntityManager()->flush($category);
现在,如何将$ category对象的更新保存到数据库中?我正在寻找等同于UPDATE查询的Doctrine。
Doctrine ORM是否一定有简单的方法来执行此操作,而不必使用DQL?
答案 0 :(得分:0)
那么不需要特定的更新查询。
使用学说,您可以像这样更新对象。假设您有带有字段名称的类别对象。因此,我们将尝试对其进行更新。
$newName = 'hello world';
$category->setName($newName);
$this->em->flush(); // without passing the object
这将更新您的实体。
因此,我们从中了解到,可以通过仅使用setter和设置新值来更新实体,然后刷新。它会自动处理。