表单验证不会在laravel上显示结果

时间:2016-10-24 21:48:53

标签: php laravel laravel-5

我的表单验证未在posts/create路由上显示错误。我用Google搜索了解决方案并找到了

Route::group(['middleware' => 'web'], function() {
    Route::resource('/posts','PostsController'); 
});

可以更改为

Route::group(['middlewareGroups' => 'web'], function() {
    Route::resource('/posts','PostsController');
});

我做到了,问题现在解决了。我想问一下,改变它是否被认为是一种好的做法?

此外,如果我从我的路线中删除此行,则它正在运行:

Route::group(['middleware' => 'web'], function() {

谁能告诉我实际发生了什么?

2 个答案:

答案 0 :(得分:0)

嗯,Laravel 5.3文档详细解释了它。 链接在这里。 https://laravel.com/docs/5.3/middleware#middleware-groups

但回答你的问题,这一行:

  

Route :: group(['middleware'=>'web'],function(){

只有在验证“web”中间件内的条件时,才允许任何请求访问内部路由。

这就是laravel的工作原理。该文档提供了有关框架中每个组件的更多详细信息。

答案 1 :(得分:0)

一个原因可能是web中间件在您的情况下应用了两次。 Laravel默认在app/Providers/RoutesServiceProvider.php中添加Web中间件,并再次将其添加到routes.php中 通过从routes.php中删除web中间件来尝试。