php – Laravel 5中的自定义验证器

前端之家收集整理的这篇文章主要介绍了php – Laravel 5中的自定义验证器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在将我的Laravel应用程序从4升级到5.但是,我有一个我无法工作的自定义验证器.

在L4中,我创建了一个validators.PHP文件,并使用require app_path()将其包含在global.PHP中.’/ validators.PHP’;.

我尝试在L5中做同样的事情.我在app / Validators / Validators.PHP删除了一个验证器,并更新了我的composer.json.

"files": [
    "app/Validators/Validators.PHP"
]

但是,现在没有任何页面呈现.我做错了什么?

请尝试以下方法

>创建一个绑定类,您可以在其中实现要扩展Validator类的每个规则.
>创建一个扩展ServiceProvider的服务提供者.
>在config / app.PHP文件添加自定义验证器提供程序.

您可以在Services文件夹中创建绑定,如下所示:

namespace MyApp\Services;

class Validator extends \Illuminate\Validation\Validator{

    public function validateFoo($attribute,$value,$parameters){  
        return $value == "foo"
    }
}

然后,使用服务提供商扩展核心:

namespace MyApp\Providers;

use MyApp\Services\Validator;
use Illuminate\Support\ServiceProvider;

class ValidatorServiceProvider extends ServiceProvider{

    public function boot()
    {
        \Validator::resolver(function($translator,$data,$rules,$messages)
        {
            return new Validator($translator,$messages);
        });
    }

    public function register()
    {
    }
}

最后,在config / app.PHP中导入您的服务提供商,如下所示:

'providers' => [
    ...
    ...
    'MyApp\Providers\ValidatorServiceProvider';
]

猜你在找的Laravel相关文章