laravel的验证可以直接在控制器里面这样验证:
$validatedData = $this->validate([
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);
if ($validatedData ->fails()) {
//未通过处理
}
或
Validator::make($request->all(), [
'title' => 'required|unique:posts|max:255',
'body' => 'required',
])->validate();
但在控制器里面直接验证,没有做到分离。这样我们可以把表单验证放在一个Request类里,实现高度可复用,下面是具体实现:
<?php
namespace App\Http\Requests;
use Illuminate\Contracts\Validation\Validator;
use Illuminate\Validation\ValidationException;
class YarnSalesOrderRequest extends Request
{
protected function failedValidation(Validator $validator)
{
throw new ValidationException($validator, $this->response(
$this-