Laravel 5.2 : Web 中间件应用了两次
Laravel 5.2 : Web middleware is applied twice
这是我的 routes.php 代码
Route::auth();
Route::group(['middleware' => 'web'], function () {
Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['auth','role:Admin']], function(){
Route::get('/home', 'HomeController@index');
Route::get('user/data', ['as' => 'admin.user.data','uses'=>'UserController@userData']);
Route::resource('user', 'UserController');
Route::get('merchant/data', ['as' => 'admin.merchant.data','uses'=>'MerchantController@merchantData']);
Route::resource('merchant', 'MerchantController');
Route::get('bcategory/data', ['as' => 'admin.bcategory.data','uses'=>'BusinessCategoryController@bcategoyData']);
Route::resource('bcategory', 'BusinessCategoryController');
Route::get('ccategory/data', ['as' => 'admin.ccategory.data','uses'=>'CouponCategoryController@ccategoyData']);
Route::resource('ccategory', 'CouponCategoryController');
Route::delete('image/{image}', ['as' => 'admin.image.destroy','uses'=>'ImageController@destroy']);
Route::put('image/{image}/primary', ['as' => 'admin.image.updateprimary','uses'=>'ImageController@setPrimaryImage']);
});
Route::group(['namespace' => 'Merchant', 'prefix' => 'merchant', 'middleware' => 'role:Merchant'], function(){
});
});
谁能告诉我为什么网络路由应用了两次我只添加了一次到组中间件。?
更改为始终在 RouteServiceProvider
中调用 web
中间件,因此以后无需在 routes.php
中指定它。
更新 Documentation 说:
请记住,web
中间件组由 RouteServiceProvider
.[=25 自动应用于您的默认 routes.php
文件=]
现在 "web" 中间件组应用于默认值。从你的文件 route.php
中删除这个 Route::group(['middleware' => 'web']
这是我的 routes.php 代码
Route::auth();
Route::group(['middleware' => 'web'], function () {
Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['auth','role:Admin']], function(){
Route::get('/home', 'HomeController@index');
Route::get('user/data', ['as' => 'admin.user.data','uses'=>'UserController@userData']);
Route::resource('user', 'UserController');
Route::get('merchant/data', ['as' => 'admin.merchant.data','uses'=>'MerchantController@merchantData']);
Route::resource('merchant', 'MerchantController');
Route::get('bcategory/data', ['as' => 'admin.bcategory.data','uses'=>'BusinessCategoryController@bcategoyData']);
Route::resource('bcategory', 'BusinessCategoryController');
Route::get('ccategory/data', ['as' => 'admin.ccategory.data','uses'=>'CouponCategoryController@ccategoyData']);
Route::resource('ccategory', 'CouponCategoryController');
Route::delete('image/{image}', ['as' => 'admin.image.destroy','uses'=>'ImageController@destroy']);
Route::put('image/{image}/primary', ['as' => 'admin.image.updateprimary','uses'=>'ImageController@setPrimaryImage']);
});
Route::group(['namespace' => 'Merchant', 'prefix' => 'merchant', 'middleware' => 'role:Merchant'], function(){
});
});
谁能告诉我为什么网络路由应用了两次我只添加了一次到组中间件。?
更改为始终在 RouteServiceProvider
中调用 web
中间件,因此以后无需在 routes.php
中指定它。
更新 Documentation 说:
请记住,web
中间件组由 RouteServiceProvider
.[=25 自动应用于您的默认 routes.php
文件=]
现在 "web" 中间件组应用于默认值。从你的文件 route.php
中删除这个Route::group(['middleware' => 'web']