Affichage error Cakephp 3

Par digaburla, il y a 8 ans


Bonjour,
Je cherche à afficher une page error404. J'utilise la version 3.5 de Cakephp.
Dans une premier temps je remarque que toutes les erreurs retournées sont des 500. (a priori normale, si j'ai bien lu la doc)
Par contre, je ne vois pas vers ou me diriger pour obtenir la bonne erreur.
J'ai tenté de modifier les template et le layout error mais rine n'y fait.
Vers ou je dois concentrer mes recherches s'il vous plait
Cheers...

6 réponses

digaburla, il y a 8 ans

Je me doutai que ma question n'allait pas avoir beaucoup de succès ;)

lakamark, il y a 8 ans

Bonjour,
Par défaut CAKEPHP arrive avec des vues error400.ctp et error500.ctp qui sont dans le répectoire src/Template/Error/ Tu n'as tout simplement à créer un nouveau fichier error404.ctp dans le même répectoire que les deux autre fichiers. Le nom à de l'importance. Il faut vraiment que le nom du fichier commence par error[satus_code_here].ctp Tu prend le code source d'un des fichiers error400 et tu colle ce même code source dans ton nouveau fichier error404.ctp par exemple.

À l'époque j'utlisait cette technique. Ça fait craiment très longtemps que j'ai abandonée CAKEPHP pour du laravel.

Bonne chance!

digaburla, il y a 8 ans

Merci pour ta réponse. Seulement Cake ne renvoi que des erreurs 500 d'une part et je penses que ta méthode fonctionnait sur la V2, mais la V3 il y a un autre truc à faire mais je coince ... :/

lakamark, il y a 8 ans

As-tu pensé activer le debug?

digaburla, il y a 8 ans

Et bien il faut le désactiver pour afficher les erreurs ! Justement je suis dessus depuis un peu de temps j'essai de retrouver ceci :

$this->name == 'CakeError'

Que l'on trouvez dans la version V2, pour essayer de mettre ca dans le beforeRender de AppController :

if($this->name == 'CakeError') { $this->layout = 'error'; }

^^

digaburla, il y a 8 ans

Salut Lakamark, solution !!!

En fait j'avais effectivement une erreur dûe à un bout de code dans AppController, du coup le systeme bugger avant de pouvoir renvoyer les exceptions ! Bref du coup je peux gérer mes erreurs sbnas soucis. Merci

Pour infos, le passage de Cake à Laravel s'est passé comment ?
++