В настоящее время я работаю над проектом с Symfony 1.4 и Doctrine 1.2.Я ищу правильный способ ведения журнала со слоя модели.
В некоторых модельных классах я использую ловушку записи postSave () для создания ZIP-файла с использованием exec () (так как PHP zip не делаетпредоставить для хранения метод «Хранится»).Чтобы убедиться, что все работает нормально, я проверяю код возврата и регистрирую ошибку, если что-то идет не так.Мой первый наивный подход состоял в том, чтобы сделать это следующим образом:
if ($returnCode != 0) {
sfContext::getInstance()->getLogger()->debug(...);
}
Как вы знаете, это не очень хорошо работает, потому что sfContext принадлежит к уровню контроллера и не должен использоваться на уровне модели.Моя следующая попытка состояла в том, чтобы использовать конструктор модели для передачи экземпляра sfLogger, но это не работает из-за того, что Doctrine 1.2 резервирует конструктор для внутреннего использования ( Документация Doctrine 1.2 ).
Я с нетерпением жду ваших предложений!