我的表单验证未在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() {
谁能告诉我实际发生了什么?
答案 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
中间件来尝试。