Bonjour à tous,

J'aimerai connaître la meilleur méthode pour retourner un message personnalisé lors d'une erreur par exemple lorsqu'on a une SQLSTATE[23000] (Integrity constraint violation: 1451) permettant de signaler à l'utilisateur qu'il doit d'abord supprimer les entités enfants .

Il me semble que faire un try/catch ne serait pas une bonne méthode car Symfony gère déjà les erreurs de son coté, faut il utiliser un subscriber obligatoirement ou bien une autre méthode spécifique ?
J'ai tenté le try/catch classique depuis le controller mais ça n'intercepte rien !

Merci d'avance pour vos réponses.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
 
    //Supprimer une catégorie d'article / prestation
    #[Route('/supprimer/{id}', 'supprimer')]
    public function supprimer(EntityManagerInterface $em, $id, CategoriesArticlesRepository $categoriesArticlesRepository): Response
    {
        $categorie = $categoriesArticlesRepository->find($id);
        try {
            $em->remove($categorie);
        } catch (\Exception $e) {
            error_log($e->getMessage());
        }
        $em->flush();
 
        return $this->redirectToRoute('categories-articles_liste');
    }