mazfreelance / laravel-command-generator
这是一个简单的包,它将一些自定义的Laravel artisan命令集成到Laravel/Lumen中。
Requires
- php: ^8.0
- illuminate/config: ^9.0|^10.0
- illuminate/console: ^6.0|^7.0|^8.0|^9.0|^10.0
- illuminate/filesystem: ^9.0|^10.0
- illuminate/support: ^9.0|^10.0
- spatie/laravel-data: ^2.1
Requires (Dev)
- mockery/mockery: ^1.3
- phpunit/phpunit: ^8
This package is auto-updated.
Last update: 2024-09-25 07:32:24 UTC
README
Laravel命令生成器
这是一个简单的包,它将一些自定义的Laravel artisan命令集成到Laravel/Lumen中。
安装
注意:此存储库现在遵循Laravel/Lumen框架的版本。请使用适合您的Laravel/Lumen应用的此包的适当版本。
您可以通过composer安装此包
composer require mazfreelance/laravel-command-generator
PHP7.x或以下
composer require mazfreelance/laravel-command-generator=^1.0.0
配置
可用命令
make:action Create a new Action class make:dto Create a new Data Transfer Object class
默认设置
所有命令的默认命名空间为App\Actions\
,每个名称期望过滤器类名遵循{$Name}Action
命名约定。以下是基于默认命名约定的操作和数据传输对象的示例。
Laravel
带有配置文件(可选)
注册服务提供程序将为您提供访问
php artisan model:action {name}
命令的权限,并允许您发布配置文件。注册服务提供程序不是必需的,只有在您想更改默认命名空间或使用artisan命令时才需要。
安装自定义命令库后,将Mazfreelance\LaravelCommandGenerator\ServiceProvider::class
注册到您的config/app.php
配置文件中
'providers' => [ // Other service providers... Mazfreelance\LaravelCommandGenerator\ServiceProvider::class, ],
使用发布命令将包配置复制到本地配置
php artisan vendor:publish --provider="Mazfreelance\LaravelCommandGenerator\ServiceProvider::class"
如果安装版本2.1.0(Lumen可以在此部分中安装mazfreelance/lumen-vendor-publish
),
可选,您可以使用以下方式发布配置文件:
# If install version 2.1.0 # Optionally, You can publish the config file with: php artisan vendor:publish --provider="Spatie\LaravelData\LaravelDataServiceProvider" --tag="data-config"
在config/custom-command.php
配置文件中。设置模型过滤器所在命名空间
'namespace' => [ 'action' => 'App\\Actions\\', 'dto' => 'App\\DTO\\', ]
Lumen
注册服务提供程序
如果您想使用
php artisan make:action|dto
命令,则此步骤是必需的。可用命令
在bootstrap/app.php
$app->register(Mazfreelance\LaravelCommandGenerator\ServiceProvider::class);
// If install version 2.1.0, $app->register(Spatie\LaravelData\LaravelDataServiceProvider::class);
更改默认命名空间
在bootstrap/app.php
config(['custom-command.action.namespace' => "App\\Actions\\"]); config(['custom-command.dto.namespace' => "App\\DTO\\"]);
变更日志
有关最近更改的更多信息,请参阅变更日志。
Lumen的其他命令
致谢
许可证
MIT。有关更多信息,请参阅许可证文件。