路由没有找到变量

Route does not find variable

我需要传递一个变量 $empresa 到我的路线,但找不到它。

仅查找路线为 ( / )

Route::get('/', function() {
    if (Auth::guest()) {
        return redirect('/home');
    }
    else {
    
        $empresa = Auth::user()->empresa;
                    return redirect('/' .$empresa);
    }    
});

我只在 web.php 文件中遇到这个问题 请帮忙

这可能是因为您还没有为带有参数的路由 / 声明控制器。

像这样在路由文件中正确声明控制器并不总是最佳做法。但是让我们忽略它并继续。

Route::get('/', function() {
    if (Auth::guest()) {
    return redirect('/home');
}
    else {

      $empresa = Auth::user()->empresa;
                return redirect('/')->with(['empress' => $empresa]);
    }
});

只需确保您已为 /{empress} 路由声明控制器。像这样:

Route::get('/{empress}', 'YourController@methodName');