Symfony ParamConverter en cas enregistrement absent
Résolu/Fermé
Clui
-
31 août 2021 à 16:11
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 31 août 2021 à 22:36
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 31 août 2021 à 22:36
A voir également:
- Object not found by the @paramconverter annotation.
- Shockwave flash object - Télécharger - Divers Web & Internet
- The realtek network controller was not found. if deep sleep mode is enabled please plug the cable ✓ - Forum Pilotes (drivers)
- No epg found - Forum Box et Streaming vidéo
- 404 not found nginx ✓ - Forum Virus
- Signal cable not connected ✓ - Forum Ecran
1 réponse
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
524
31 août 2021 à 21:23
31 août 2021 à 21:23
Bonjour,
C'est bien le comportement attendu de ParamConverter : si aucun enregistrement en base ne correspond à l'identifiant passé dans l'url, le site retourne alors une erreur 404 (voir le code de retour http en bas à gauche dans le Profiler), ce qui est normal puisque l'utilisateur demande une page qui n'existe pas.
Le "joli" message d'erreur (et la stack trace) s'affiche uniquement car tu es en environnement de développement (APP_ENV=dev dans fichier .env). Tu peux tester avec l'environnement de prod pour voir la page 404 de base de Symfony (que tu peux évidemment personnaliser).
Bonne journée,
C'est bien le comportement attendu de ParamConverter : si aucun enregistrement en base ne correspond à l'identifiant passé dans l'url, le site retourne alors une erreur 404 (voir le code de retour http en bas à gauche dans le Profiler), ce qui est normal puisque l'utilisateur demande une page qui n'existe pas.
Le "joli" message d'erreur (et la stack trace) s'affiche uniquement car tu es en environnement de développement (APP_ENV=dev dans fichier .env). Tu peux tester avec l'environnement de prod pour voir la page 404 de base de Symfony (que tu peux évidemment personnaliser).
Bonne journée,
31 août 2021 à 21:37
31 août 2021 à 22:03
Pour personnaliser le message du retour 404, le plus simple est d'utiliser directement le ProductRepository à la place de ParamConverter :
https://symfony.com/doc/current/doctrine.html#fetching-objects-from-the-database
31 août 2021 à 22:08
Modifié le 31 août 2021 à 22:46
Mais c'est juste des raccourcis pour des fonctions de contrôleur simple. Il sera souvent plus pratique d'utiliser le repository.