繁体   English   中英

Laravel 5 RESTful资源控制器子集操作不起作用

[英]Laravel 5 RESTful Resource Controllers subset actions not working

我有一个中间件,用于检查路由的子集操作的

public function handle($request, Closure $next)
    {
        $requests = $request->route()->getAction();
        $userPermissions = Session::get('userPermissions');
        $module = $requests['module'];
        $permission= $requests['permission'];
}

我有一条路线

 Route::resource('/users', 'BackEnd\'UsersController', ['module' => 'acl', 'permission'=>'createUser']);

这是我转储请求时得到的

array (size=7)
  'middleware' => 
    array (size=2)
      0 => string 'authentication' (length=14)
      1 => string 'authorization' (length=13)
  'as' => string 'user.index' (length=10)
  'uses' => string 'App\Http\Controllers\BackEnd'UsersController@index' (length=50)
  'controller' => string 'App\Http\Controllers\BackEnd'UsersController@index' (length=50)
  'namespace' => string 'App\Http\Controllers' (length=20)
  'prefix' => string '/' (length=1)
  'where' => 
    array (size=0)
      empty

我所缺少的是该数组中的“模块”和“权限”如果我使用其他路由,请说

 Route::get('/users/all', ['uses'=> 'BackEnd\UsersController@index',
     'module'=>'acl',
            'permission'=>'createUser'

        ]);

这是请求的转储结果,这就是我想要使用资源路由的结果。

array (size=8)
  'middleware' => 
    array (size=2)
      0 => string 'authentication' (length=14)
      1 => string 'authorization' (length=13)
  'uses' => string 'App\Http\Controllers\BackEnd\UsersController@index' (length=50)
  'module' => string 'acl' (length=3)
  'permission' => string 'createUser' (length=10)
  'controller' => string 'App\Http\Controllers\BackEnd\UsersController@index' (length=50)
  'namespace' => string 'App\Http\Controllers' (length=20)
  'prefix' => null
  'where' => 
    array (size=0)
      empty

资源选项有问题。 您可以这样使用sth:

Route::group(['middleware'=>'auth', 'modules'=>'testt'], function() {
    Route::resource('/te', 'HomeController');
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM