Symfony: отображение панели инструментов dev в среде prod - PullRequest
1 голос
/ 26 августа 2011

Мне удалось в интерактивном режиме установить режим отладки моего приложения Symfony вкл. И выкл. Для сеанса пользователя примерно так:

$configuration = ProjectConfiguration::getApplicationConfiguration($app,
                                                           $env, $debugging);

Я знаю, что панель инструментов веб-отладки, отображаемая или нет, не зависитна значение $ debugging, но на конфигурацию текущей среды.

На данный момент единственный способ, которым появляется панель инструментов, это когда $ env = 'dev'.

Я бы хотелчтобы активировать его при доступе к среде «prod».

У меня есть настройки этого приложения:

prod:
  .settings:
    no_script_name:         true
    logging_enabled:        false
    web_debug:              true
    error_reporting:        <?php echo (E_ALL | E_STRICT)."\n" ?>

dev:
  .settings:
    error_reporting:        <?php echo (E_ALL | E_STRICT)."\n" ?>
    web_debug:              true
    cache:                  false
    no_script_name:         false
    etag:                   false

Панель инструментов не отображается, очевидно, игнорируя настройку «web_debug».

Если я получаю эхо (sfConfig :: get ('sf_web_debug')), я получаю "true".

¿Как заставить работать панель инструментов?

Ответы [ 2 ]

2 голосов
/ 29 декабря 2011

вам также нужно изменить factory.yml.По умолчанию в среде prod нет Logger.

Просто закомментируйте так:

prod:
#  logger:
#    class:   sfNoLogger
#    param:
#      level:   err
#      loggers: ~
1 голос
/ 26 августа 2011

Из памяти вы должны изменить значение в вашем php-файле внешнего интерфейса.Сравните файлы frontend.php и frontend_dev.php в вашем веб-каталоге.Ищите разницу, где одно истинно, а другое ложно (я думаю, что это последний параметр).

Строки:

require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php');
$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'prod', false));
sfContext::createInstance($configuration)->dispatch();

изменяются на:

require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php');
$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'prod', true));
sfContext::createInstance($configuration)->dispatch();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...