我在视图中有以下代码
@if ($errors->any())
<ul class="alert alert-danger">
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
@endif
我希望我的视图可以使用$ errors,因此我想显示它们
但是,此块会引发以下异常:
958ab466b0f563093a9e18c3ff070466cc69459a.php行中的ErrorException 38:未定义的变量:错误(查看:..... filename.blade.php
答案 0 :(得分:3)
对于Laravel 5.2,请确保将您的路由放在web
中间件组中,如下所示:
Route::group(['middleware' => ['web']], function () {
// Add your routes here
});
我写了一个更深入的解释,为什么会出现这种情况:Laravel 5.2 validation errors
简而言之,Laravel 5.0和5.1用于自动运行多个中间件。其中一个中间件(\Illuminate\View\Middleware\ShareErrorsFromSession
)用于将$errors
变量自动注入到您的所有视图中。 Laravel 5.2现在全部都是可选的,但只需将您的路由放在web
中间件组中即可达到同样的效果。