Builder
介绍
以命令行模式生成对应的
Model,Trait,Struct,Service,Logic,Controller
文件,自动生成“CURD” 的接口模板
使用方法
1 composer.json引入如下包名,更新composer
"require-dev" : {
"drcarpen/builder":"^1.0"
}
2 app/Commands 加入新文件 BuilderCommand.php
<?php
namespace App\Commands;
use Uniondrug\Builder\Commands\Builder;
/**
* 生成脚手架
* php console builder --table tableName
* @package App\Commands
*/
class BuilderCommand extends Builder
{
protected $authorConfig = [
'name' => 'yourName',
'email' => 'yourEmail@uniondrug.cn'
];
}
3 .gitignore文件添加忽略目录
app/Commands/BuilderCommand.php
4 命令行第三个参数为数据表命,必须依照规范,为下划线定义,如 wx_members
php console builder --table tableName -e release
参数说明
- --table tableName 表名必填,根据此表名生成对应的Model等文件(默认使用database.php中的配置)
- -e environment 指定的环境变量,可改变database.php中的对应环境的数据库配置
功能说明
Model层
- 根据指定的数据表生成对应的Model文件
- 生成property属性
- model含有
status
字段时,自动生成对应的statusText
Struct层
- 生成对应的
trait
文件 - 生成
create,delete,update,detail,listing,paging
六个入参结构体 - 生成
row,rows,listing
三个出参结构体
Service层
- 生成
create,delete,update,detail,listing,paging
的方法
Logic层
- 生成
create,delete,update,detail,listing,paging
的逻辑层文件
Controller层
- 生成
create,delete,update,detail,listing,paging
的方法及sdk名
版本更新计划
v1.1版本
- 已知bug修复
- 支持多model生成,baseModel与normalModel拆分,支持重写
- 支持数据字段注解,支持@enum(1=a|2=b)的文档显示
- 支持单model重写 --model all --model tableName
v3.1.0版本
1.支持别名 2.快速常用的创建curd 3.指定controller生成路径