Заставить регистратор работать в Doctrine MongoDB ODM?

Я пытаюсь заставить регистратор работать в Doctrine ODM.

// .. some initialization code here ...

$mongoConfig->setLoggerCallable(function(array $log){
                print_r($log);
                die("Mongo Logging Called...");
            });

$dm = \Doctrine\ODM\MongoDB\DocumentManager::create(new \Doctrine\MongoDB\Connection(), $mongoConfig);

Вот ссылка: http://www.doctrine-project.org/docs/mongodb_odm/1.0/en/reference/logging.html.

Я запрашиваю документы, используя построитель запросов диспетчера документов. Я должен успешно найти и сохранить документы. Но обратный вызов регистратора НИКОГДА не вызывается. Что я делаю не так?


person Dayson    schedule 05.07.2011    source источник


Ответы (1)


Нашел решение через IRC канал #doctrine. Соединению необходимо передать конфигурацию отдельно, поскольку DocumentManager не применяет переданную ему конфигурацию к создаваемому им соединению. Это будет исправлено в будущей версии. Вот как вы это делаете -

// setup the mongodb connection
$connection = new \Doctrine\MongoDB\Connection(null, array(), $mongoConfig);

// create the document manager for the connection above
$dm = \Doctrine\ODM\MongoDB\DocumentManager::create($connection, $mongoConfig);
person Dayson    schedule 05.07.2011
comment
ты. Сегодня 2014 год, но проблема все еще существует :( - person evilive; 24.04.2014