Provider to use Mongator with Laravel framework

dev-master 2013-07-02 20:01 UTC

This package is not auto-updated.

Last update: 2023-11-20 09:15:10 UTC


Provider for using Mongator with Laravel 4 framework


  • PHP 5.3.x
  • Laravel 4
  • mongator/mongator


Add mongator/laravel to your composer requirements, you can see the package information on Packagist.:

    "require": {
        "mongator/laravel": "dev-master"

Now, run composer update

Once the package is installed, open your app/config/app.php configuration file and locate the providers key. Add the following line to the end:


Next, locate the aliases key and add the following lines:

    'Mondator'        => 'Mongator\Laravel\Facades\Mondator',
    'Mongator'        => 'Mongator\Laravel\Facades\Mongator',

Now just create a YAML config classes dir at your app folder:

mkdir app/schema/


  • connection_dsn (default 'mongodb://localhost:27017'): database connection string
  • connection_database: the database name
  • connection_name (default 'default'): the name of the connection
  • models_output (default 'app/models/'): output path of the classes
  • models_input (default 'app/schema/'): A valid dir with YAML definitions of the config classes
  • metadata_class: The metadata factory class name
  • logger (default false): enable the query logger
  • extensions (default Array()): array of extension instances


Route::get('/view', function() { 
    $articleRepository = Mongator::getRepository('Article');
    $article = $articleRepository->findOneById($id);

    return View::make($article);
Route::get('/create', function() { 
    $article = Mongator::create('Article');
    $article->setAuthor('John Doe');
    $article->setTitle('Lorem ipsum dolor sit amet, consectetur adipisicing elit.')

Remember, before using the models you must generate them. (You can use the command provided with this package.)


With this package you can find three useful commands, thought php artisan:

  • mongator:generate: Processes config classes and generates the files of the classes.
  • mongator:_indexes: Ensures the indexes of all repositories
  • mongator:fix: Fixes all the missing references.


Tests are in the tests folder. To run them, you need PHPUnit. Example:

$ phpunit --configuration phpunit.xml.dist