Nextras ORM code generator
Installation
composer require martenb/nextras-orm-code-generator:dev-master --dev
Configuration
extensions:
ormGenerator: MartenB\Nextras\ORM\DI\Extension
Optional configuration
ormGenerator:
directory: '%appDir%/Model/Orm'
namespace: 'App\Model\Orm'
entityExtends: 'App\Model\Orm\BaseEntity'
repositoryExtends: 'App\Model\Orm\BaseRepository'
mapperExtends: 'App\Model\Orm\BaseMapper'
Usage
php bin/console orm:generator Product Products
This command creates entity, repository and mapper in %directory%/Product
.
%directory%/Product/Product.php
Entity <?php
namespace App\Model\Orm\Product;
/**
* @property int $id {primary}
*/
class Product extends BaseEntity
{
}
%directory%/Product/ProductsRepository.php
Repository <?php
namespace App\Model\Orm\Product;
class ProductsRepository extends BaseRepository
{
public static function getEntityClassNames(): array
{
return [Product::class];
}
}
%directory%/Product/ProductsMapper.php
Maper <?php
namespace App\Model\Orm\Product;
class ProductsMapper extends BaseMapper
{
}