minuteoflaravel / laravel-self-validating-model
在模型保存或更新时自动验证的模型类
1.0.0
2022-05-20 19:45 UTC
Requires
- php: ^7.4|^8.0|^8.1
- illuminate/contracts: ^6.9|^7.0|^8.0|^9.0
- illuminate/database: ^6.9|^7.0|^8.0|^9.0
- illuminate/support: ^6.9|^7.0|^8.0|^9.0
README
此包包含一个扩展的 Eloquent 模型类,当模型保存/更新时,会自动根据模型规则属性中的验证规则进行验证
兼容性
- Laravel 9
- Laravel 8
- Laravel 7
- Laravel 6
安装
您可以通过 composer 安装此包
composer require minuteoflaravel/laravel-self-validating-model
如何使用
假设我们有一个 Contact 模型,它扩展了 Illuminate\Database\Eloquent\Model
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Contact extends Model { use HasFactory; }
我们不应扩展 Illuminate\Database\Eloquent\Model
,而应扩展 MinuteOfLaravel\Validation\SelfValidatingModel
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use MinuteOfLaravel\Validation\SelfValidatingModel as Model; class Contact extends Model { use HasFactory; }
然后只需将验证规则添加到 $rules
属性
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use MinuteOfLaravel\Validation\SelfValidatingModel as Model; class Contact extends Model { use HasFactory; public $rules = [ 'first_name' => 'required', 'last_name' => 'required', 'email' => 'required|email:rfc,dns,spoof', ]; }
这样就完成了!模型在保存/更新时将被验证。
自定义错误消息
如果您需要添加自定义可翻译错误消息,则只需将其添加到 resources/lang/en/validation.php 文件中即可。
许可协议
MIT 许可协议 (MIT)。有关更多信息,请参阅 许可文件。