wessama / laravel-pretty-validation-messages
一个简单的特质,用于为 Laravel 表单请求动态设置验证消息
v1.0.1
2023-10-08 23:02 UTC
Requires
- php: ^7.3|^8.0
- illuminate/support: ^8.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
Laravel Pretty Validation Messages 是一个 Laravel 包,提供了一个特质,允许 FormRequests 使用翻译字符串进行验证消息。
安装
您可以通过 composer 安装此包
composer require wessama/laravel-pretty-validation-messages
或者,您可以直接将其添加到您的 composer.json
文件中
{ "require": { "wessama/laravel-pretty-validation-messages": "^1.0" } }
否则,您可以克隆仓库,并手动将特质包含到您的 FormRequests 中。
用法
安装后,在您的 FormRequest 类中使用 HasPrettyValidationMessages
特质
// app/Http/Requests/YourFormRequest.php use WessamA\LaravelPrettyValidationMessages\HasPrettyValidationMessages; class YourFormRequest extends FormRequest { use HasPrettyValidationMessages; // Your rules and other FormRequest logic here... }
设置与预期模式匹配的本地化字符串键。
整个点是不必为您的项目中每个 FormRequest
重复编写 message()
方法。相反,您可以将此特质插入到任何 FormRequest
中,并自动使用您已定义的翻译字符串。
特质将寻找以下模式的翻译字符串
validation.{fqcn}.{field}.{rule}
其中 {fqcn}
是 FormRequest
的完全限定类名,{field}
是正在验证的 FormRequest
的名称,{rule}
是验证规则的名称。
例如,以下 FormRequest
class StoreUserDetailsRequest extends FormRequest { // ... }
您的翻译字符串将如下所示
// /lang/en/validation.php return [ \App\Http\Requests\Form\StoreUserDetails::class => [ 'email' => [ 'required' => 'Email address is required', 'email' => 'Email address looks weird, innit?', // add more rules here... ], 'password' => [ 'required' => 'Password is required', // add more rules here... ], ], ];
测试
您可以使用以下命令运行测试
composer test
鸣谢
- Wessam Ahmed
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。