Я, вероятно, слишком усложняю вещи, где это не нужно, но у меня есть форма, которая отправляется через AJAX и затем проверяется. Я пытаюсь вернуть первую ошибку, которая возникает, но я могу только когда-либо получить validation.required, который, конечно, бесполезен для меня; Я не могу сообщить пользователю, какое поле не удалось, и я не могу перевести соответствующее сообщение об ошибке.Проверка - возврат первой ошибки для ответа AJAX
Что дает? Как я могу получить сообщение об ошибке для человека и вернуть его как ответ JSON?
Вот что у меня так далеко ... Самое большое, как-сделай я это извлечение имени атрибута для сообщения об ошибке, но, возможно, есть гораздо более простой способ справиться с этим вообще ...
/**
* Adds a new post to the system
*
* @param Request $request
* @return json
*/
public function store(Request $request)
{
// run validation
if(!empty($validator = $this->validate($request)))
{
return response()->json(trans('global/'.$validator->first(), ['attribute' => 'how to get attribute?!?!']), 400);
}
// some other logic...
}
/**
* Validates a post add or post update request
*
* @access private
* @param Request $request
* @return mixed
*/
private function validate(Request $request)
{
// set-up validation rules
$validator = Validator::make($request->all(), [
'username' => 'max:255|required',
'email' => 'email',
'service' => 'numeric|required',
]);
$validator->setAttributeNames([
'username' => "Username",
'service' => "Service",
]);
// run validation
if($validator->fails())
{
return $validator->errors();
}
return true;
}