moh4mmad / request-validation-generator

一个基于迁移列数据类型、列长度、唯一性和外键生成请求验证文件的包。

v1.0.2 2023-05-22 17:33 UTC

This package is auto-updated.

Last update: 2024-09-23 11:00:01 UTC


README

Request Validation Generator 是一个 Laravel 扩展包,它可以自动根据您的迁移列数据类型、列长度、唯一性和外键生成请求验证文件。

安装

您可以通过 Composer 安装此包。运行以下命令:

composer require moh4mmad/request-validation-generator

安装包后,您需要发布配置文件和迁移文件。运行以下命令来发布包资源:

php artisan vendor:publish --tag=request-validations

该命令会将包的配置文件和迁移文件发布到您的应用中,允许您自定义行为并在必要时修改生成的请求验证文件。

用法

要为迁移生成请求验证文件,请运行以下 Artisan 命令:

php artisan generate:request-validations

该命令将扫描您的迁移文件,并根据列数据类型、长度、唯一性和外键生成请求验证文件。生成的文件将放置在 app/Http/Requests 目录中。

示例

假设您有一个迁移文件 20220101000000_create_users_table.php,包含以下列:

Schema::create('users', function (Blueprint $table) {
    $table->id();
    $table->string('name');
    $table->string('email')->unique();
    $table->timestamp('email_verified_at')->nullable();
    $table->string('password');
    $table->timestamps();
});

运行 generate:request-validations 命令将生成一个请求验证文件 app/Http/Requests/User/Request.php,内容如下:

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class UserRequest extends FormRequest
{
    public function authorize()
    {
        return true;
    }

    public function rules()
    {
        return [
            'name' => ['required', 'string'],
            'email' => ['required', 'string', 'email', 'unique:users,email'],
            'password' => ['required', 'string'],
        ];
    }
}

生成的请求验证文件为迁移中的每个列提供了验证规则。您可以在控制器或表单请求中使用此文件来验证传入的请求。

贡献

欢迎贡献!如果您发现任何问题或有改进建议,请打开一个问题或提交一个拉取请求。

许可证

此包是开源软件,根据 MIT 许可证 发布。