Laravel 5.4在视图中显示错误

时间:2019-02-15 08:12:02

标签: php laravel-5 error-handling

我有一个上载文件的表格。 在控制器中,我对该文件中的列进行了各种检查,并得到一些错误。

我将这些错误添加到数组中,并希望在视图中显示所有这些错误。

我尝试了各种解决方案,但是没有用。

现在,我正在控制器中针对文件中的每一行执行此操作:

$errors[] = array('file_name'=>$file_name, 'error'=>'Invalid coffee name');

在视图中,我尝试了以下两件事:

@if ($errors->any())
    {{ implode('', $errors->all('<div>:message</div>')) }}
@endif

@if ($errors->any())
 @foreach ($errors->all() as $error)
     <div>{{$error}}</div>
 @endforeach
@endif

问题是,尽管我在errors数组中有2个错误(我检查过),但在视图中只能看到最后一个。

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

我这样解决了:

在控制器方法中,我添加了:

 $errors = new MessageBag();

出现错误时:

$errors->add('coffee', $file_name . ': Invalid coffee name');

在视图中:

 @if ($errors->any())
                    <div class="alert alert-danger">
                        <p>There are errors in the file you uploaded</p>
                        <ul>
                        @foreach ($errors->all() as $error)
                            <li>{{$error}}</li>
                        @endforeach
                        </ul>
                    </div>
                @endif