manowartop / laravel-skeleton
Laravel 应用基础骨架
Requires
- php: >=7.2
- doctrine/dbal: ^2.5 || ^3.0
- illuminate/database: >=5.0
- illuminate/filesystem: >=5.0
- illuminate/support: >=5.0
- manowartop/repository-service-laravel-pattern: 1.*
README
该软件包基于 Repository-Service Laravel 模式软件包
软件包链接: https://github.com/manowartop97/repository-service-laravel-pattern
软件包包含
代码生成功能
允许生成类/接口/特性
$template = new ClassTemplate();
$template->setType('class')->setName('ClassName')->setNamespace('Path\\To\\Class');
可以定义属性、方法、常量、继承、实现、文档块注释,创建抽象/最终类,设置方法体等...
Eloquent 模型生成功能
命令 php artisan skeleton:model:generate tableName - 生成表的模型,定义所有关系,属性,定义带有 props 注释的文档块。
Repository-Service 模式文件生成
命令 php artisan skeleton:repository-service:generate {table} 生成 EntityRepositoryInterface & EntityRepository 和 ServiceInterface & Service,用于 Repository-Service Laravel 模式软件包。
请求生成
命令 skeleton:request:generate {namespace} {modelNamespace?} 将生成一个请求实例,
{namespace}将指定新请求的文件夹(例如,User\\StoreRequest将创建一个App\\Http\\Requests\\User\\StoreReqeust);{modelNamespace?}- 是可选参数。例如,App\\Models\\ModelName将生成具有模型fillable属性规则的请求;
资源生成
命令 skeleton:resource:generate {table} 将根据表名生成特定模型的资源。
API 资源控制器生成
命令 skeleton:resource-controller:generate {table} 将根据表名生成特定模型实体的资源控制器;
控制器操作将基于 Repository-Service Laravel 模式软件包;
CRUD 生成
命令 skeleton:crud:generate {table} 将生成以下实例
- 模型(如果不存在)
- 存储接口(如果不存在)
- 存储(如果不存在)
- 服务接口(如果不存在)
- 服务(如果不存在)
- 资源(如果不存在)
- 存储请求和更新请求(如果不存在)
- API 资源控制器(如果不存在)