我定义了mu删除功能,按ID删除行,但每次尝试新内容时都会出错,所以我怀疑我的逻辑是对的。
这是我的控制器和服务
public function deleteUser($id)
{
$query = $this->getUserRepository()
->createQueryBuilder('du')
->delete('du')
->where('du.id = :id')
->setParameter("id", $id)
->getQuery()
->execute();
return $query;
}
/**
* @param $id
* @Route("/users/delete/{id}", name="user_delete")
* @return \Symfony\Component\HttpFoundation\JsonResponse
* @throws \Doctrine\Common\Annotations\AnnotationException
*/
public function getUserDeleteAction($id)
{
$this->get('user')->deleteUser($id);
return $this->success();
}
答案 0 :(得分:2)
您应该在控制器中使用 - > remove()。
$em = $this->getDoctrine()->getManager();
$user = $em->getRepository(‘...’)->findBy([‘id’ => $id]);
$em->remove($user);
$em->flush();
答案 1 :(得分:0)
我自己解决了这个问题。 删除函数似乎需要有关删除内容的参数。在我原来的问题中,它会删除整个数据库,如果它实际上有效。
availableOffsets()