【问题标题】:Laravel Voyager: only see a menu item if the user is adminLaravel Voyager:如果用户是管理员,则仅查看菜单项
【发布时间】:2018-04-02 18:05:25
【问题描述】:

我正在使用 Voyager,我想解决,如果用户是管理员,请在欢迎页面中再查看一个菜单项。

提前感谢您的回答!

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

【问题讨论】:

  • 你是如何建立你的菜单的?向我们展示相关控制器的方法和视图。

标签: php laravel laravel-5.4 roles voyager


【解决方案1】:
  • 您只需登录仪表板即可
  • 点击该特定角色的编辑按钮
  • 选中并取消选中您想要的角色权限

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

      • 谢谢我的朋友。我被困了 2 周啊哈哈哈
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-27
      • 2023-03-07
      • 1970-01-01
      • 2021-09-22
      • 2020-12-11
      • 2018-12-25
      • 2020-02-09
      相关资源
      最近更新 更多