1
让我的表单通过AJAX提交并从验证器返回错误,但不知道如何访问它们。如何处理JSON在Laravel中返回验证器错误
所以我返回错误,像这样在我的控制器:
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
return Response::json(array(
'errors' => $validator->messages()->all(),
200)
);
}
和(使用Firebug)我看到了JSON是:
errors: Array
0: "This field is required"
等。我正在寻找一种方式来处理所有可能的错误并将其显示给用户。
通常我会回到我的控制器:
'empty-field' => true
然后在我的AJAX调用:
success: function(data) {
if(data.empty-field == true) {
// inform the user of failure
}
}
但是,这将很快成为繁琐的检查,并通过JSON发送每一个可能的错误。任何方式我可以简单地检查任何返回的错误并处理它们?就像Laravel在不使用AJAX时处理错误的方式一样:
@if($errors->has('field'))
<p class="input-message input-error full-width">{{ $errors->first('field') }}</p>
@endif
谢谢。
您必须将HTTP状态设置为其中一个错误代码。像400.然后使用ajax'error'回调。 – lukasgeiter 2014-10-26 22:11:09