扩展Laravel 4.1验证类

时间:2014-05-04 05:53:15

标签: php laravel laravel-4

我尝试扩展Validator类。我需要添加一些方法,我想扩展所有类,而不是使用Validator::extend();

我添加了供应商目录结构:

-comjaroapp
 -src
  -Comjaroapp
   -Validation
    -Validator.php
    -ValidatorServiceProvider.php

在provider数组中的config / app.php中,我添加了:

'Comjaroapp\Validation\ValidatorServiceProvider'

要测试的代码很简单:

验证

    namespace Comjaroapp\Validation;
class CustomValidator extends \Illuminate\Validation\Validator{
    public function validatePesel($attribute,$value,$options=null){
        return true;
    }
}

ValidatorServiceProvider:

namespace Comjarospp\Validation;
use Illuminate\Support\ServiceProvider;
class ValidatorServiceProvider extends ServiceProvider{
    public function register(){}

    public function boot(){
        $this->app->validator->resolver(function($transator,$data,$rules,$messages){
            return new CustomValidator($transator,$data,$rules,$messages);
        });
    }
}

运行编辑器更新后,我看到错误:

> Error Output: PHP Fatal error:  Class
> 'Comjaroapp\Validation\ValidatorServiceProvider' not found in
> /vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php
> on line 158

当我查看其他扩展程序时,所有工作都具有相同的结构。

如果有人有想法,出了什么问题或何时应该搜索,请帮助。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您的命名空间有不同的名称:

Comjarospp\Validation

Comjaroapp\Validation

编辑:

修复命名空间名称后,您执行了

composer dumpautoload