Php 定制Laravel注册验证程序
我正在润色Php 定制Laravel注册验证程序,php,laravel,validation,Php,Laravel,Validation,我正在润色validator()方法,该方法由php artisan auth命令创建。看起来是这样的: protected function custom_validator(array $data) { return Validator::make($data, [ 'name' => 'required|string|max:255', 'password' => 'required|string|min:6', 'cel
validator()
方法,该方法由php artisan auth
命令创建。看起来是这样的:
protected function custom_validator(array $data)
{
return Validator::make($data, [
'name' => 'required|string|max:255',
'password' => 'required|string|min:6',
'cell_phone' => 'required|numeric',
]);
}
下面是我自己的create()
方法:
public function custom_create(Request $request)
{
$this->custom_validator($request->all())->validate();
dd('validation done ...');
}
它工作正常,一切正常
我的问题:在
custom\u create()
方法中的->validate()
是什么?正如我所说,它是有效的,我是根据Laravel默认值编写的。但我不明白
我相信这就足够了$this->custom\u validator($request->all())
。它调用同一类中的custom\u validator()
方法。那么什么是->validate()
?它来自哪里?添加这些行
use Validator;
use Illuminate\Validation\Rule;
use Illuminate\Http\Request;
use lluminate\Support\Collection;
->validate()
用于在验证失败时自动重定向
来自文档
如果您想创建一个验证器实例
手动,但仍然可以利用提供的自动重定向
通过请求的validate方法,您可以在上调用validate方法
现有验证程序实例。如果验证失败,用户将
自动重定向,或者在AJAX请求的情况下,自动重定向JSON
将返回以下响应:
语法是
Validator::make($request->all(), [
'body' => 'required',
])->validate();
在本例中,您将发送
验证程序实例并调用验证()
after.查看此文件illumb\Validation\Validator.php
我在项目根目录中找不到illumb
目录。`vendor\laravel\framework\src`Validator::make
为您提供了一个验证程序实例,该实例可以访问