Laravel Voyager:只有管理员用户才能看到菜单项

Laravel Voyager: only see a menu item if the user is admin

我正在使用Voyager,我想解决,如果用户是admin,请在欢迎页面中多看一个菜单项。

提前感谢您的回答!

<body>
  <div class="flex-center position-ref full-height">
    @if (Route::has('login'))
      <div class="top-right links">
        @auth
          <a href="{{ url('/home') }}">Home</a>
        @else
          <a href="{{ route('login') }}">Login</a>
          <a href="{{ route('register') }}">Register</a>
        @endauth
      </div>
    @endif

    <div class="content">
      <div class="title m-b-md">
        Laravel
      </div>

      <div class="links">
        <a href="https://laravel.com/docs">Documentation</a>
        <a href="https://laracasts.com">Laracasts</a>
        <a href="https://laravel-news.com">News</a>
        <a href="https://forge.laravel.com">Forge</a>
        <a href="https://github.com/laravel/laravel">GitHub</a>
      </div>
    </div>
  </div>
</body>

您可以在您的视图中检查经过身份验证的用户的角色。也许是这样的:

@if (Auth::user()->hasRole('admin'))
    <a href="...">This can only be seen by admins</a>
@endif

您可以从控制面板轻松完成此操作 转到相应的角色并删除该模型的权限,它将从该用户的菜单中删除 例如:如果您想从菜单中隐藏特定角色或每个角色的媒体,请转到该角色并取消选中 "Browse media"。

  • 您只需登录仪表板即可
  • 单击该特定角色的编辑按钮
  • 选中和取消选中您想要的角色权限

访问Voyager Academy Roles Permisson了解更多信息