dung-nguyentrung / mes-cmd
在自定义目录中生成格林兰iMES的文件
dev-master
2024-08-04 03:01 UTC
Requires
- php: >=7.4
- illuminate/support: ^9|^10|^11
This package is auto-updated.
Last update: 2024-09-04 03:11:33 UTC
README
文件夹结构
├── app
│ └── Common
│ ├── Constants
│ ├── Controllers
│ └── Helpers
│ └── Interfaces
│ └── Middleware
│ └── Models
│ └── Repositories
│ └── Services
│ └── Traits
│ └── Modules
│ ├── Auth
│ ├── Controllers
│ ├── DataTransferObjects
│ ├── Exceptions
│ ├── Interfaces
│ ├── Models
│ ├── QueryBuilders
│ ├── Requests
│ ├── Routes
│ ├── Rules
│ ├── Services
│ ├── Exports
│ ├── Imports
│ ├── Jobs
│ ├── ...
├── ...
配置
发布配置文件
mes-cmd.php
php artisan vendor:publish Which provider or tag's files would you like to publish? All providers and tags ......................................................................................................................... 0 Provider: DungNguyenTrung\MesCmd\MESServiceProvider ............................................................................................ 1 Provider: Illuminate\Foundation\Providers\FoundationServiceProvider ............................................................................ 2 Provider: Illuminate\Mail\MailServiceProvider .................................................................................................. 3 Provider: Illuminate\Notifications\NotificationServiceProvider ................................................................................. 4 Provider: Illuminate\Pagination\PaginationServiceProvider ...................................................................................... 5 Provider: Laravel\Sail\SailServiceProvider ..................................................................................................... 6 Provider: Laravel\Sanctum\SanctumServiceProvider ............................................................................................... 7 Provider: Laravel\Tinker\TinkerServiceProvider ................................................................................................. 8 Tag: config .................................................................................................................................... 9 Tag: laravel-errors ........................................................................................................................... 10 Tag: laravel-mail ............................................................................................................................. 11 Tag: laravel-notifications .................................................................................................................... 12 Tag: laravel-pagination ....................................................................................................................... 13 Tag: sail ..................................................................................................................................... 14 Tag: sail-bin ................................................................................................................................. 15 Tag: sail-database ............................................................................................................................ 16 Tag: sail-docker .............................................................................................................................. 17 Tag: sanctum-config ........................................................................................................................... 18 Tag: sanctum-migrations ....................................................................................................................... 19 .....
输入 1
发布此包的配置
配置文件夹设置
<?php return [ /* |-------------------------------------------------------------------------- | MES Command Line Config |-------------------------------------------------------------------------- | | This value is the name of your application, which will be used when the | framework needs to place the application's name in a notification or | other UI elements where an application name needs to be displayed. | */ 'folder' => [ 'root' => 'Modules', 'controller' => 'Controller', 'dto' => 'DataTransferObjects', 'model' => 'Models', 'query' => 'QueryBuilders', 'repo' => 'Repositories', 'service' => 'Services', 'view' => 'Views', 'view_model' => 'ViewModels', ], ];
描述
此包包含一些自定义收集器
- 创建一个新的控制器
- 创建一个新的DTO
- 创建一个新的模型
- 创建一个新的查询
- 创建一个新的存储库
- 创建一个新的服务
- 创建一个新的视图
- 创建一个新的视图模型
安装
使用composer要求此包。建议仅用于开发要求此包。
composer require dung-nguyentrung/mes-cmd:dev-master --dev
用法
创建控制器
php artisan mes:controller ControllerName Folder控制器已成功创建在 yourPath/app/Modules/{Folder}/Controllers/{ControllerName}.php
创建模型
php artisan mes:model ModelName Folder模型已成功创建在 yourPath/app/Modules/{Folder}/Models/{ModelName}.php
创建查询构建器
- 基本
php artisan mes:query QueryBuilderName Folder
- 添加 --model 标签
php artisan mes:query QueryBuilderName Folder --model=YourModel
YourModel.php
<?php ... use App\Modules/{Folder}/QueryBuilders/{QueryBuilderName}; class YourModel extends BaseModel { use HasFactory; ... /** * newEloquentBuilder * * @param $query * @return QueryBuilderName */ public function newEloquentBuilder($query): QueryBuilderName { return new QueryBuilderName($query); } }查询构建器已成功创建在 yourPath/app/Modules/{Folder}/QueryBuilders/{QueryBuilderName}.php
创建视图
php artisan mes:view view-name Folder视图已成功创建在 yourPath/app/Modules/{Folder}/View/{view-name}.blade.php
创建视图模型
php artisan mes:vm ViewModelName Folder视图模型已成功创建在 yourPath/app/Modules/{Folder}/ViewModels/{ViewModelName}.php
创建服务
php artisan mes:service ServiceName Folder服务已成功创建在 yourPath/app/Modules/{Folder}/Services/{ServiceName}.php {ServiceName}Interface 已成功创建在 yourPath/app/Modules/{Folder}/Interfaces/{ServiceName}Interface.php
创建存储库
php artisan mes:repo RepositoryName Folder存储库已成功创建在 yourPath/app/Modules/{Folder}/Repositories/{RepositoryName}.php {RepositoryName}Interface 已成功创建在 yourPath/app/Modules/{Folder}/Interfaces/{RepositoryName}Interface.php