Здравствуйте, мне нравится это разделение, валидация данных происходит в отдельном классе Form Requests:
CategoryRequestclass CategoryRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'name' => 'required|max:255',
'title' => 'required|max:150',
'keywords' => 'max:212',
'description' => 'required'
];
}
}
Мой метод контроллера где происходит валидация с помощью класса
CategoryRequest
Метод storepublic function store(CategoryRequest $request)
{
HelperTransliterate::setTransliterateToRequest($request);
$category = new Category();
$category->store($request);
if($request->hasFile('image')) {
$path = HelperImage::resizeImage($request->file('image'),'categories',$category->id);
$category->setImageAvatar($path[0]);
}
if($request->filled('srcImgTextContent')) {
$paths = explode(',',$request->input('srcImgTextContent'));
HelperImage::deleteFilesNotInRequest($paths,$category->getAllImageContentFormFolder());
HelperCategory::contentSetImages($category,$paths);
}
else {
$category->removeAllImageContent();
}
return response()->json(['status' => 'success']);
}
Но проблема в том что статус ответа от сервера приходит такой: 422 Unprocessable Entity
И при выводе response в axios (javascript):
catch((response) => {
console.log(response);
this.showMsg = true;
this.source.success = false;
this.source.data = "Ошибка при сохранении";
})
Выводиться вот это:
Error: Request failed with status code 422
at createError (vendor.js:547)
at settle (vendor.js:710)
at XMLHttpRequest.handleLoad (vendor.js:80)
То есть я не могу получить сообщения об ошибках для полей формы, подскажите пожалуйста как более грамотно решить данную проблему ? Заранее благодарю за ответ.