symfony - 删除时未定义的索引“用户”
问题描述
使用 symfony 4.2.4,这是我的方法:
/**
* @Route("/users/{id}/delete", name="delete_user", methods={"GET"})
*/
public function delete($id)
{
$this->denyAccessUnlessGranted('ROLE_ADMIN');
$entityManager = $this->getDoctrine()->getManager();
$user = $entityManager->getRepository(User::class)
->find($id);
$entityManager->remove($user);
$entityManager->flush();
$this->addFlash('success', 'User successfully removed!');
return $this->redirectToRoute('list_users');
}
在刷新命令上,我得到“未定义的索引:用户”,但在其他实体(不是用户)上使用相同的方法就像一个魅力。我不明白这里的意思,有什么提示吗?
多谢
解决方案
我不建议使用方法“GET”来删除“用户”。您可以尝试使用此代码:
/**
* @Route("/{id}", name="users_delete", methods="DELETE")
*/
public function delete(Request $request, $id): Response
{
$idUser = $this->UsersRepository->findOneById($id);
if ($this->isCsrfTokenValid('delete'.$idUser->getId(), $request->request->get('_token'))) {
$em = $this->getDoctrine()->getManager();
$em->remove($idUser);
$em->flush();
}
return $this->redirectToRoute('users_index');
}
推荐阅读
- angular - 我想发送一个可观察的 2 个父组件。我该怎么做?我需要使用 EventEmitter 吗?
- python - ModuleNotFoundError:没有名为 celery 的模块
- python - 使用变量作为参数
- apache-camel - 如何使用 Camel toD 和 netty4-http 组件?动态url优化问题
- node.js - 编辑用户数据后如何更新passportJWT数据?
- mongodb - 如何在不删除对象的其余部分的情况下仅返回 mongo 对象数组中的一个字段
- android - 微调器项目中的文本对齐方式
- html - CSS id 选择器不适用于显示 flex
- c++ - 机器和数组元素存储的字节序
- javascript - 有没有办法修复我的 for 循环以启用或禁用基于单独列表但没有覆盖潜力的选项