【发布时间】:2019-03-28 21:21:18
【问题描述】:
在 laravel 5.5 之前,我使用了这样一个自定义格式的表单请求:
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Contracts\Validation\Validator;
class StoreProductRequest extends FormRequest
{
public function authorize ()
{
return true;
}
public function rules ()
{
return [
'title' => 'required',
'desc' => 'required',
];
}
public function response (array $errors)
{
return response()->json($errors, 200);
}
protected function formatErrors (Validator $validator)
{
$result = ['success' => false, 'msg' => $validator->errors()->first()];
return $result;
}
}
表示发生错误时,只有第一个错误以 json 格式返回,如下所示:
{
"success" : "false",
"msg" : "title field is required "
}
但似乎在 laravel 5.5 中以这种方式无法格式化这样的错误。
现在我想以 json 格式返回与我上面提到的格式完全相同的错误,但我不知道该怎么做
【问题讨论】:
标签: php laravel laravel-5.5