诺贝尔特/laravel-validator

基于Laravel Validator类的简单且易于使用的验证功能。

dev-main 2022-05-08 02:00 UTC

This package is auto-updated.

Last update: 2024-09-08 07:30:35 UTC


README

基于Laravel Validator类的简单且易于使用的验证功能。

这个库主要用于Lumen,但也可以集成到Laravel应用程序中,并轻松管理验证。

核心功能包括

  1. 验证传入的请求数据,并返回验证后的参数数组
  2. 如果您愿意,还可以返回一个模型对象,只需设置模型参数即可
  3. 即使在验证失败的情况下,您也可以提取验证后的字段
  4. 可以将其注入到您的控制器类中,使用起来非常流畅

如何安装

通过composer安装

$ composer install nobelatunje/laravel-validator

如何在控制器中使用

namespace App\Http\Controllers;

use Nobelatunje\LaravelValidator;

class CustomerController extends Controller {

    public function create(LaravelValidator $validator, Request $request) {

        //set validation rules
        $this->setValidationRules($validator);

        if($validator->validate($request)) {

            //save the customer
            $validator->customer->save();
                
            //do other things
            

        } else {
            //return the error message or do something else
            return $validator->error_message;
        }
    
    }


    private function setValidationRules(LaravelValidator $validator) {
        //set the model params
        $validator->setModelParams(Customer::class, 'customer')
        //set the fields and the validation rules
        ->field('firstname', 'string|required', 'FirstName')
        ->field('lastname', 'string|required', 'LastName')
        ->field('email', 'required|email:rfc,dns|unique:customers', 'Email Address')
        ->field('phone_number', 'required|string|unique:customers', 'Phone Number');
    }

}