Personnalisation avancé des pages d’erreurs, Symfony 2

La documentation de Symfony 2 est assez claire sur la personnalisation des pages d’erreur avec Twig : http://symfony.com/doc/current/cookbook/controller/error_pages.html

Le petit apport que je voudrais faire par rapport à la documentation concerne l’affichage de la page de débogage original de Symfony.

Il serait bien que les nouvelles pages d’erreurs aient deux comportements en fonction de l’environnement d’exécution de l’application.
Un pour l’environnement de production (Votre template à vous), et un autre pour l’environnement de développement. Dans ce second cas, on aimerais avoir la page de débug original de Symfony, qui sera bien plus explicite que la page d’erreur que l’on réserve à nos futurs utilisateurs.

Pour palier à cela, il suffit d’ajouter ce code dans votre template twig.

{% if  app.environment == 'dev' %}
{% render 'TwigBundle:Exception:show' with{'exception':exception, 'logger':logger, 'format':format} %}
 {% else %}
ICI Votre template d'erreur personalisé
{% endif %}

En gros, si vous êtes en environnement de développement, c’est la page de débug original qui est utilisé et non celle que vous avez définit.

Cette entrée a été publiée dans PHP, Symfony 2. Vous pouvez la mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>