2017-02-11 1 views
-1

Mit Zweig dump() gibt mir diesen Fehler in meiner prod Umgebung:Symfony2: zeige nur Zweig dump() in dev

request.CRITICAL: Uncaught PHP Exception Twig_Error_Syntax: 
"Unknown "dump" function." at /home/.../all-pages.html.twig line 70 
{"exception":"[object] (Twig_Error_Syntax(code: 0): 
Unknown \"dump\" function. at /home/.../all-pages.html.twig:70)"} 

Jetzt dachte ich, ist intelligent und setzen dump() innerhalb einer if-Anweisung:

{% if app.debug %} // also tried {% if app.environment == 'dev' %} 

    {{ dump(joe) }} 

{% endif }% 

Aber das gibt den gleichen Fehler in prod.

Wie kann ich dump() in meiner Entwicklungsumgebung verwenden und es in prod ignorieren?

+5

Sie sollten Dump-Anweisungen entfernen, bevor Sie zur Produktion übergehen. Jedoch http://stackoverflow.com/questions/42006434/how-to-disable-dump-symfony-function-on-production – Cerad

Antwort

2

Dies ist normales Verhalten. dump() Arbeiten in Entwicklungsumgebung, weil in der AppKernel.php Datei gibt es:

if (in_array($this->getEnvironment(), array('dev', 'test'))) { 
    // Some code ... 
    $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle(); 
} 

Sie dieses Bundle für alle Umgebungen nur oben durch Zugabe von in der Bündel $ Array speichern und AppKernel.php.

Aber seien Sie sich bewusst, dass dies keine gute Praxis ist. Sie können auch aktivieren vorübergehend den Debug-Modus erforderlich, wenn durch diese Einstellung in app.php Ändern (false => true):

$kernel = new AppKernel('prod', true); 

gute Entwickler haben.

Verwandte Themen