/orm

A drop-in Doctrine ORM 2 implementation for Laravel 5+ and Lumen

Primary LanguagePHPMIT LicenseMIT

Laravel Doctrine ORM

GitHub release Travis StyleCI Scrutinizer Packagist Packagist

A drop-in Doctrine ORM 2 implementation for Laravel 5+

$scientist = new Scientist(
    'Albert', 
    'Einstein'
);

$scientist->addTheory(
    new Theory('Theory of relativity')
);

EntityManager::persist($scientist);
EntityManager::flush();
  • Easy configuration
  • Pagination
  • Pre-configured metadata, connections and caching
  • Extendable: extend or add your own drivers for metadata, connections or cache
  • Annotations, yaml, xml, config and static php metadata mappings
  • Multiple entity managers and connections
  • Laravel naming strategy
  • Simple authentication implementation
  • Password reminders implementation
  • Doctrine console commands
  • DoctrineExtensions supported
  • Timestamps, Softdeletes and TablePrefix listeners

Documentation

Read the full documentation.

Installation

Laravel Laravel Doctrine
5.1.* 1.0.*
5.2.* 1.1.*

Require this package

composer require "laravel-doctrine/orm:1.1.*"

After adding the package, add the ServiceProvider to the providers array in config/app.php

LaravelDoctrine\ORM\DoctrineServiceProvider::class,

Optionally you can register the EntityManager facade:

'EntityManager' => LaravelDoctrine\ORM\Facades\EntityManager::class

To publish the config use:

php artisan vendor:publish --tag="config"

License

This package is licensed under the MIT license.