15 oct. 2024 | Connexion

Blog

Symfony (5, 6) : suppression utilisateur - Erreur

Symfony (5, 6) : suppression utilisateur - Erreur

Développement web
Symfony PHP

il y a 2 ans citizenz7 0 commentaire 4111 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);
    }

0 commentaire


Nb d'articles actifs : 50 | Nb de commentaires : 39 | Nb de catégories : 8 | Nb de tags : 32 | Nb total de lectures : 218 391
2024 citizenz.info • Some rights reserved GPLv3 • Version 3.3.5

Au printemps, j’aime bien pisser du haut des remparts au lever du soleil… Y’a une belle vue ! (Perceval, Kaamelott, Livre IV, Tous les matins du monde, 2e partie)