Как инициализировать соединение MongoDB в контроллере в среде Zend? - PullRequest
0 голосов
/ 15 марта 2012

Я пытался сделать что-то подобное в моем MongoController.Однако это не работает.

public function indexAction()
{
    $m = new Mongo();
    $db = $m->test;
}

Я попробовал те же две строки кода в своем приложении / views / scripts / mongo / index.phtml, и это работает.Я не могу понять, почему это происходит.

Может ли кто-нибудь указать мне правильное направление?

1 Ответ

0 голосов
/ 16 марта 2012

Я был бы более склонен создать ваше соединение с БД в качестве ресурса начальной загрузки. В вашем Bootstrap.php файле ...

protected function _initMongo() {
    // you may want to get config options from application.ini
    // via the getOptions() or getOption() methods

    $mongo = new Mongo();

    return $mongo;
}

Затем получите доступ к этому в ваших контроллерах, как это

public function indexAction() {
    /* @var $mongo Mongo */
    $mongo = $this->getInvokeArg('bootstrap')->getResource('mongo');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...