il y a 2 ans citizenz7 0 commentaire 3807 lectures
Dans la fonction Delete() de UserController.php vous avez quelque chose comme ça :
#[Route('/{id}', name: 'app_user_delete', methods: ['POST'])]
public function delete(Request $request, User $user, UserRepository $userRepository): Response
{
if ($this->isCsrfTokenValid('delete'.$user->getId(), $request->request->get('_token'))) {
$userRepository->remove($user);
}
return $this->redirectToRoute('app_user_index', [], Response::HTTP_SEE_OTHER);
}
Il suffit donc d'ajouter un setToken(null) lors de la suppression du user (avec un flashmessage en prime) :
#[Route('/{id}', name: 'app_user_delete', methods: ['POST'])]
public function delete(Request $request, User $user, UserRepository $userRepository): Response
{
if ($this->isCsrfTokenValid('delete'.$user->getId(), $request->request->get('_token'))) {
$this->container->get('security.token_storage')->setToken(null);
$userRepository->remove($user, true);
}
$this->addFlash('deleted','Votre compte a été supprimé.');
return $this->redirectToRoute('app_home', [], Response::HTTP_SEE_OTHER);
}
Blog d'un geek quinqua nivernais fan d'ovalie, de linuxerie, de musique et de Net
Faut arrêter ces conneries de nord et de sud ! Une fois pour toutes, le nord, suivant comment on est tourné, ça change tout ! (Perceval, Kaamelott, Livre I, Ambidextrie)