laravel-doctrine/fluent
A fluent PHP mapping driver for Doctrine2.
Requires
- php: ^8.1
- doctrine/dbal: ^3.8.2|^4
- doctrine/inflector: ^1.4|^2.0
- doctrine/orm: ^3.1
- doctrine/persistence: ^1.3.5|^2.0|^3.0
Requires (Dev)
- beberlei/doctrineextensions: ~1.0
- carbonphp/carbon-doctrine-types: ^2.1|^3.0
- gedmo/doctrine-extensions: ^2.4|^3
- mockery/mockery: ~1.0
- nesbot/carbon: ^2.0|^3.0
- phpunit/phpunit: ~8.0|~9.0
- zf1/zend-date: ~1.12
Suggests
None
Provides
None
Conflicts
None
Replaces
None
MIT 669b7da85ba0d54ca86422f271866c6b0a3dface
- Guido Contreras Woda <guiwoda.woop@gmail.com>
- Patrick Brouwers <patrick.woop@maatwebsite.nl>
databaseormfluentdata mapperdoctrinelaravelmappingsmapping driver
README
👁 GitHub release
👁 Packagist
👁 License
👁 Github actions
A fluent mapping driver for Doctrine3
composer require laravel-doctrine/fluent
This mapping driver allows you to manage your mappings in an Object Oriented approach, separating your entities
from your mapping configuration without the need for configuration files like XML or YAML.
This is done by implementing the LaravelDoctrine\Fluent\Mapping interface, or extending the abstract classes
provided with this package for an easier use:
LaravelDoctrine\Fluent\EntityMapping, LaravelDoctrine\Fluent\EmbeddableMapping or MappedSuperClassMapping.
This package provides a fluent Builder over Doctrine's ClassMetadataBuilder, aimed at easing usage of
Doctrine's mapping concepts in Laravel. The builder adds syntax sugar and implements the same grammar that you
might use in Laravel migrations.
class ScientistMapping extends EntityMapping { /** * Returns the fully qualified name of the class that this mapper maps. * * @return string */ public function mapFor() { return Scientist::class; } /** * Load the object's metadata through the Metadata Builder object. * * @param Fluent $builder */ public function map(Fluent $builder) { $builder->increments('id'); $builder->embed(Name::class, 'name'); $builder->hasMany(Theory::class, 'theories')->ownedBy('scientist'); } }
