biliboobrian/lumen-angular-code-generator

基于数据库模式的Lumen 5+和Angular 6+的模型、控制器、提供者和服务生成器

1.0.37 2021-08-03 08:23 UTC

README

!! 进行中 > ANGULAR 生成器 !!

基于数据库模式的lumen 5+和angular 6+的模型、控制器提供者和服务生成器。

安装

使用composer在您的lumen项目中安装它。

composer require biliboobrian/lumen-angular-code-generator

修改您的bootstrap/app.php提供者以将生成器添加到Artisan。

$app->register(biliboobrian\lumenAngularCodeGenerator\Provider\GeneratorServiceProvider::class);

用法

从数据库中生成

您需要在项目中设置数据库连接。

使用各种命令构建CRUD模型和控制器(可用命令列表将随着开发进程更新)

  bilibo:lumen:ctrl      Generate CRUD controller for a table name.
  bilibo:lumen:ctrls     Generate CRUD controllers for all tables.
  bilibo:lumen:model     Generate Eloquent model according to table passed in argument.
  bilibo:lumen:models    Generate Eloquent models for all tables.

默认配置如下(您可以通过命令行中的-c选项覆盖它们以提供另一个config.php文件)

    'lumen_model_namespace'       	=> 'App\Models',
    'lumen_ctrl_namespace'       	=> 'App\Http\Controllers',
    'base_class_lumen_model_name' 	=> \biliboobrian\lumenAngularCodeGenerator\Model\MicroServiceExtendModel::class,
    'base_class_lumen_ctrl_name' 	=> \biliboobrian\lumenAngularCodeGenerator\Controller\CrudExtendController::class,
    'lumen_model_output_path'     	=> app_path() . '/Models',
    'lumen_ctrl_output_path'      	=> app_path() . '/Http/Controllers',
    'no_timestamps'   				=> null,
    'date_format'     				=> null,
	'connection'      				=> null,
	'add_route'      				=> null,
	'add_cache'      				=> null,

使用命令帮助获取更多信息

$ php artisan bilibo:lumen:ctrl -h

控制器和模型的生成扩展了 lushdigital/microservice-crud。

使用生成的控制器和模型

默认情况下,所有控制器都提供一套适用路由,您可以将其添加到您的routes/web.php中

//for full tables retrieve
$router->get(   '/model',                 'ModelController@index');

//for paginated tables retrieve
$router->get(   '/model',                 'ModelController@get');


$router->get(   '/model/{id}/{relation}', 'ModelController@getRelationList');
$router->get(   '/model/{id}',            'ModelController@show');
$router->post(  '/model',                 'ModelController@store');
$router->put(   '/model/{id}',            'ModelController@update');
$router->delete('/model/{id}',            'ModelController@destroy');

您可以使用bilibo:lumen:ctrls命令中的-a选项将所有路由添加到您的web.php中。

许可

MIT