Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel 5.2带中间件的嵌套路由组_Php_Laravel 5.2 - Fatal编程技术网

Php Laravel 5.2带中间件的嵌套路由组

Php Laravel 5.2带中间件的嵌套路由组,php,laravel-5.2,Php,Laravel 5.2,问题: 会话::flash无法工作 奇怪的路线参数 问题1 我遇到一个错误,其中Session::flash无法工作。 我也找到了一个解决办法,但是。。奇怪 我认为嵌套组和中间件有问题 代码: 现在。。 如果我以这种方式修改kernel.php,这将起作用: function show($locale, $id){ dd($id); } 从 到 你觉得怎么样 问题2 在上述路线中,ProductController@show正在获取两个参数:locale和id 例如,如果我导航到/en

问题:

  • 会话::flash无法工作
  • 奇怪的路线参数
  • 问题1

    我遇到一个错误,其中Session::flash无法工作。 我也找到了一个解决办法,但是。。奇怪

    我认为嵌套组和中间件有问题

    代码:

    现在。。 如果我以这种方式修改kernel.php,这将起作用:

    function show($locale, $id){
        dd($id);
    }
    

    你觉得怎么样

    问题2

    在上述路线中,ProductController@show正在获取两个参数:locale和id

    例如,如果我导航到/en/4

    function show($id){
        dd($id);
    }
    
    $id=“en”

    它的工作方式如下:

    function show($locale, $id){
        dd($id);
    }
    
    这是故意的吗? 如果是,有没有办法避免$locale被传递到组内的路由?

    找到了答案

    原来的帖子说要替换

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

    function show($locale, $id){
        dd($id);
    }
    
    Route::group(['middleware' => ['web']], function () {
       ...
    });
    
    Route::group(['middlewareGroups' => ['web']], function () {
       ...
    });