我正在尝试使用此gist,它会添加一个自定义规则来验证允许使用空格的字母。
在我的项目中,我添加了一个新文件夹,该文件夹使用PSR-0进行自动加载,以包含任何其他文件,例如帮助程序,存储库。
"psr-0": {
"MW": "app/"
}
我已根据文件夹结构命名它们
应用/ MW / CustomValidatorServiceProvider.php
<?php namespace MW;
use Illuminate\Support\ServiceProvider;
use Validators\CustomValidator;
class CustomValidatorServiceProvider extends ServiceProvider {
public function register(){}
public function boot()
{
$this->app->validator->resolver(function($translator, $data, $rules, $messages)
{
return new CustomValidator($translator, $data, $rules, $messages);
});
}
}
应用/ MW /验证/ CustomValidator.php
<?php namespace MW\Validation;
use Illuminate\Validation\Validator;
class CustomValidator extends Validator {
public function validateAlphaSpaces($attribute, $value, $params)
{
return preg_match('/^[\pL\s]+$/u', $value);
}
}
我也在app.php
'providers' => array(
'MW\CustomValidatorServiceProvider'
);
我也做过composer dump-autoload -o
我的问题是为什么当我尝试在我的规则中使用它时
'first_name'=> 'required|alpha_spaces|min:2'
并验证它我收到以下错误
/var/www/mw/app/MW/CustomValidatorServiceProvider.php
Class&#39; Validators \ CustomValidator&#39;找不到
答案 0 :(得分:0)
您从CustomValidators
命名空间而不是Validators
命名空间中导入MW\Validators
。
它应该是这样的:
use MW\Validators\CustomValidator;