Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.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中的默认身份验证功能不起作用,无法显示注销功能 @if(Auth::guest()) @否则 @恩迪夫_Php_Laravel_Laravel 5_Blade_Laravel 5.2 - Fatal编程技术网

Php Laravel中的默认身份验证功能不起作用,无法显示注销功能 @if(Auth::guest()) @否则 @恩迪夫

Php Laravel中的默认身份验证功能不起作用,无法显示注销功能 @if(Auth::guest()) @否则 @恩迪夫,php,laravel,laravel-5,blade,laravel-5.2,Php,Laravel,Laravel 5,Blade,Laravel 5.2,这是我运行命令后自动生成的代码:php artisan make:auth 在它生成文件并为数据库设置之后,它可以让我注册和登录。 但在我登录或注册后,它不能显示注销按钮。上面的代码正在检查会话是否有任何用户。如果没有用户登录,则会出现网站右侧的登录和注册按钮。如下所示:主页的默认设置- 但是一切都是一样的,我可以找出错误的部分。Auth::check()Auth::user()这两个我已经尝试过了,但仍然不起作用。任何人都有解决方案吗?如果在添加Auth支架后这都是默认设置,则必须调整路线

这是我运行命令后自动生成的代码:
php artisan make:auth
在它生成文件并为数据库设置之后,它可以让我注册和登录。 但在我登录或注册后,它不能显示注销按钮。上面的代码正在检查会话是否有任何用户。如果没有用户登录,则会出现网站右侧的登录和注册按钮。如下所示:主页的默认设置-



但是一切都是一样的,我可以找出错误的部分。
Auth::check()Auth::user()
这两个我已经尝试过了,但仍然不起作用。任何人都有解决方案吗?

如果在添加Auth支架后这都是默认设置,则必须调整路线

您需要将web中间件组应用于将使用该布局的任何路由。您可以将它们移动到使用“web”中间件的
Route::group

 @if (Auth::guest())
                    <li><a href="{{ url('/login') }}">Login</a></li>
                    <li><a href="{{ url('/register') }}">Register</a></li>
                @else
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
                            {{ Auth::user()->name }} <span class="caret"></span>
                        </a>

                        <ul class="dropdown-menu" role="menu">
                            <li><a href="{{ url('/logout') }}"><i class="fa fa-btn fa-sign-out"></i>Logout</a></li>
                        </ul>
                    </li>
                @endif

此web组为您提供Auth正在使用的会话。

Route::group(['middleware'=>['web']],function(){/});Route::group(['middleware'=>'web'],函数(){Route::auth();Route::get('/home','HomeController@index'); }); 
ya,我已经在我的文件中的htpp/routes.php中添加了这个。将“/”路由移动到这些组中的一个。像这样
route::group(['middleware'=>['web']],函数(){route::get('/'),'HomeController@index'); });它可以工作。谢谢你的帮助。顺便说一句,当我将来创建更多页面时,是否需要添加更多内容?Lagbox很可能会应用“web”中间件来实现所有路线。除非您特别不需要会话或csrf保护等。
Route::group(['middleware' => ['web']], function () {
    Route::get('/', function () {
        return view('welcome');
    });        
});