1
 @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

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

主页


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

4

1 回答 1

2

如果在添加 Auth 脚手架后这都是默认设置,您将不得不调整路线。

您将希望将Web中间件组应用于您将使用该布局的任何路由。您可以将它们移动到Route::group使用“网络”中间件的位置。

Route::group(['middleware' => ['web']], function () {
    Route::get('/', function () {
        return view('welcome');
    });        
});

该网络组为您提供 Auth 正在使用的会话。

于 2015-12-31T07:44:53.173 回答