Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Zend Framework 2 Module for Doctrine MongoDB ODM
Pull request Compare This branch is 178 commits behind doctrine:master.
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Doctrine MongoDB ODM Module for Zend Framework 2

Master: Build Status

The DoctrineMongoODMModule integrates Doctrine 2 MongoDB ODM with Zend Framework 2 quickly and easily. The following features are intended to work out of the box:

  • MongoDB support
  • Multiple document managers
  • Multiple connections
  • Support for using existing Mongo connections


Zend Framework 2 Application Skeleton (or compatible architecture)


Installation of this module uses composer. For composer documentation, please refer to

Installation steps

  1. cd my/project/directory
  2. create a composer.json file with following contents:

         "require": {
             "doctrine/doctrine-mongo-odm-module": "dev-master"
  3. install composer via curl -s | php (on windows, download and execute it with PHP)
  4. run php composer.phar install
  5. open my/project/directory/configs/application.config.php and add following keys to your modules (in this order)

  6. copy vendor/doctrine/doctrine-mongo-odm-module/config/module.doctrine-mongo-odm.local.php.dist into your application's config/autoload directory, rename it to module.doctrine-mongo-odm.local.php and make the appropriate changes. With this config file you can configure your mongo connection, add extra annotations to register, add subscribers to the event manager, add filters to the filter collection, and drivers to the driver chain.

  7. create directory my/project/directory/data/DoctrineMongoODMModule/Proxy and
    my/project/directory/data/DoctrineMongoODMModule/Hydrators and make sure your application has write access to it.


Command Line

Access the Doctrine command line as following


Service Locator

Access the entity manager using the following service manager alias:

$dm = $this->getServiceLocator()->get('doctrine.documentmanager.odm_default');
Something went wrong with that request. Please try again.