有人可以向我解释为什么有时候我不得不使用$errors->all()
而不是为什么吗?
努力为错误和对象$ errors找到唯一的解决方案。
// View 1
@if (count($errors) > 0)
@foreach($errors as $error)
{{ $error }}<br>
@endforeach
@endif
// View 2 that sometimes it crashes with:
// "Call to a member function all() on array"
@if (count($errors) > 0)
@foreach($errors->all() as $error)
{{ $error }}<br>
@endforeach
@endif
答案 0 :(得分:1)
$errors->all()
,如果您通过Validator或在Request
类中验证数据,则使用。请参阅本文档的part。 Laravel与$errors
类共享MessageBag
变量。
$errors
作为array
,使用if在控制器中返回以下内容:
return back()->withErrors([
'field1' => 'Error in the field 1'
]);
在这种情况下,Laravel与$errors
共享array
变量
答案 1 :(得分:-1)
我实际上并没有做那么多laravel,但我想您总是可以做这样的事情:
@if (count($errors) > 0)
@if(is_array($errors))
@foreach($errors as $error)
// code
@endforeach
@elseif(is_object($errors))
@foreach($errors->all() as $error)
//code
@endforeach
@endif
@endif