Laravel 5 如何在 guest/authenticated 用户上显示 blade 内容?

Laravel 5 how to display blade content on guest/authenticated user?

我可以从文档中读到我可以编写以下内容以了解用户是否已通过身份验证:

if (Auth::check())
{
 // The user is logged in...
}

直到一切正常(身份验证)

我仍然想念的是我应该如何使用 blade 管理身份验证。 例如,为了显示不同的菜单,如果用户已通过或未通过身份验证。

但我不会复制所有 blade 模板来获得上述内容。 我想了解如何放置条件(控制器或视图在哪里?)以便根据当前身份验证状态显示(输出)不同的内容

例如我为 app.blade.php 文件想到的伪代码:

....
<body >
     @if (Auth::check())
     {
     @include('menu')
     @yield('content')
     }@else{
     @include('menu.guest')
     }
</body>

这样好吗?

谢谢

是的,当您使用相同的模板时,这种方式很好。 您也可以制作单独的文件并根据您的身份验证状态包含。

是的,你可以这样检查,但是你的代码中几乎没有错误,你不能在 blade 模板中使用大括号。做这样的事情。

<body >
     @if (Auth::check())
         @include('menu')
         @yield('content')
     @else
         @include('menu.guest')
     @endif
</body>

您可以使用 blade 指令获取 look

    @auth
       // The user is authenticated...
   @endauth