fetaciik / laravel-commands-no-nova
Laravel创建命令。
Requires
- php: ^8.0|^8.1|^8.2
- laravel/framework: ^9.0
- wamesk/laravel-api-response: ^1.0
- wamesk/utils: ^1.0
This package is auto-updated.
Last update: 2024-09-30 01:54:32 UTC
README
Laravel包,用于提供更好的 artisan 命令以创建模型等。
安装
composer require wamesk/laravel-commands
使用此命令发布配置。
php artisan vendor:publish --provider="Wame\LaravelCommands\LaravelCommandsServiceProvider"
您可以在下面的配置文件夹中找到配置:config。
project
└─ config
└─ wame-commands.php
您可以在此处配置包命令
// config/wame-commands.php <?php return [ /* Version of ApiController you want to develop (v1, v2, v3, null) */ // 'version' => 'v1', // Default: null /* Typ of id your project is using (options: id (basic integer), uuid, ulid) */ // 'id-type' => 'uuid', // Default: ulid /* Enable or disable sorting in migration and model */ // 'sorting' => false, // Default: true /* Per page pagination default */ // 'per_page' => 10, // Default: 10 /* You can disable commands that wame:make will run. By default, all will run. */ 'make' => [ // 'api-controllers' => false, // 'events' => false, // 'listeners' => false, // 'migration' => false, // 'model' => false, // 'nova' => false, // 'observer' => false, ], ];
使用
制作命令
此命令将运行以下列出的所有php artisan
命令。
在命令末尾使用name参数运行命令。名称参数是您的模型名称。(例如:User)
php artisan wame:make <name>
运行此命令后,它将询问您是否要创建自定义配置。
Would you like to customize configuration for current model? (yes/no) [no]: >
您可以选择是或否。
如果您选择否(默认),它将运行所有命令。注意:请确保您已设置配置文件。
如果您选择是,它将询问您应该运行哪些命令(默认为是)。(以下为示例)
注意:如果您在运行命令时创建自定义配置,它将忽略配置文件中设置为false的命令。
Create Model (yes/no) [yes]:
>
模型命令
此命令将创建具有预设方法的基Model。
可以通过这些配置进行配置。
// wame-commands.php // Will add HasUuids or Ulids to model depending on id-type 'id-type' => 'ulid', // Other options: id, uuid // Will add SortableTrait and Sortable interface to class along with $sortable array config 'sorting' => true, // Other option: false
使用以下命令运行
php artisan wame:model
Nova资源命令
此命令将创建具有预设方法的基Nova资源。
可以通过这些配置进行配置。
// wame-commands.php // Will add SortableTrait and Sortable interface to class along with $sortable array config 'sorting' => true, // Other option: false
使用以下命令运行
php artisan wame:nova
迁移命令
此命令将创建具有预设列的基迁移。
可以通过这些配置进行配置。
// wame-commands.php // Will add id column depending on id-type 'id-type' => 'ulid', // Other options: id, uuid // Will add `$table->unsignedInteger('sort')->nullable();` column 'sorting' => true, // Other option: false
使用以下命令运行
php artisan wame:migration
观察者命令
此命令将创建具有预设函数和事件的基观察者。
使用以下命令运行
php artisan wame:model
事件命令
此命令将创建具有预设构造函数、函数和类的基事件。
使用以下命令运行
php artisan wame:events
监听器命令
此命令将创建基监听器作业。
使用以下命令运行
php artisan wame:listeners
API控制器命令
此命令将创建具有预设函数、响应和验证的基API控制器。它还将创建基模型资源和将其包含在控制器中。
使用以下命令运行
php artisan wame:api-controller
实用工具
命令中使用的函数和项目中的函数在此处有文档说明。
辅助函数
使用以下命令将此实用工具包含到您的文件中
use Wame\LaravelCommands\Utils\Helpers;
创建目录
Helpers::createDir()
函数用于在项目中创建目录。
它需要一个目录路径参数(字符串)和可选的第二个参数chmod规则。
此函数从app文件夹开始。
创建和/或打开文件
Helpers::createFile()
函数用于在项目中创建文件和/或打开文件。
它需要一个文件路径、名称和扩展名参数(字符串),可选的第二个参数是模式(字符串)。例如:'w' / 'r'。
此函数从app文件夹开始。
驼峰式转换器
Helpers::camelCaseConvert()
函数用于转换字符串
它需要一个字符串参数进行转换。
第二个参数是分隔符(字符串)(默认:'_')。可选参数。
第三个参数是低(布尔值)(默认:false)。可选参数。更改是否以小写字母开头。
示例
$camelCase = Helpers::camelCaseConvert('SuperModel'); return $camelCase; // returns 'super_model'
验证器
默认情况下,此包使用验证器。它通过链式函数和获取响应来工作。响应由wamesk/laravel-api-response
包的函数生成。要更好地了解响应的工作方式,请查看响应包的文档此处
验证函数
此函数是最终函数。总是最后。它需要验证的数据和规则。有关规则的文档点击此处
使用示例
$data = ['email' => 'example@gmail.com', 'password' => 'password']; $validator = Validator::validate($data, [ 'email' => 'email|required|max:255', 'password' => 'required|string' ]); if ($validator) return $validator;
如果验证出错,它将返回
{ "data": null, "code": null, "errors": { "email": [ "validation.required" ] }, "message": null }
代码函数
此函数会在响应中添加内部代码。您可以通过传递第二个参数来更改消息翻译的前缀。
使用示例
$data = ['email' => 'example@gmail.com', 'password' => 'password']; $validator = Validator::code('1.2')->validate($data, [ 'email' => 'email|required|max:255', 'password' => 'required|string' ]); if ($validator) return $validator;
如果验证出错,它将返回
{ "data": "1.2", "code": null, "errors": { "email": [ "validation.required" ] }, "message": "api.1.2" }
状态码函数
此函数不会在视觉上更改响应,但会更改响应的状态码。默认状态码是400 (错误请求)。如果您想链式调用所有函数,可以像这样操作。状态码始终是整数。
Validator::statusCode($statusCode)->code($code)->validate($data, $rules);