我正在尝试扩展Validator类。这样,当添加空格时,我的文本字段不会返回false。
我创建一个文件夹像app'extension'validation
这是我的CustomValidation类<?php namespace App'Extension'Validation;
use Illuminate'Validation'Validator;
class CustomValidation extends Validator{
public function alpha_spaces($attribute, $value, $parameters)
{
if(preg_match("/^([-a-z0-9_ ])+$/i", $value))
{
return true;
}
return false;
}
}
下面是同一个文件夹
中的ValidationServiceProvider类<?php namespace App'Extension'Validation;
use Illuminate'Support'ServiceProvider;
class ValidationServiceProvider extends ServiceProvider{
public function register(){}
public function boot()
{
$this->app->validator->resolver(function($translator, $data, $rules, $messages)
{
return new CustomValidation($translator, $data, $rules, $messages);
});
}
}
这是我尝试添加服务提供商到app。php
时得到的错误Class 'App'Extension'Validation'ValidationServiceProvider' not found
我有类在app'Extension'Validation作为ValidationServiceProvider.php
有人知道我为什么会有这个问题吗?我已经被这个问题困了一天了,我需要别人的帮助。
您需要将文件夹"app/Extension"
添加到composer.json
的autoload > classmap
属性中,如下所示:
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php",
"app/Extension"
]
}
这样做之后,编写器知道它应该从"app/Extension"
加载类
然后执行
composer dump-autoload