【问题标题】:Show different navigation for different users role为不同的用户角色显示不同的导航
【发布时间】:2023-03-19 02:34:01
【问题描述】:

我正在构建一个应用程序,我必须在其中为用户角色显示不同的导航。然而,这就是我想出的

导航示例:

<div id="navbar" class="navbar-collapse collapse">
    <ul class="nav navbar-nav navbar-right">
       @if (Auth::check() && Auth::user()->role == 'author')
       <li><a href="{{ url('user/' . Auth::user()->nameslug) }}"><i class="fa fa-user"></i> {{ Auth::user()->name }}</a></li>
       @endif

       @if (Auth::check() && Auth::user()->role == 'admin')
         @if (!empty($page) && $page == 'admin')
           <li class="active"><a href="{{ url('admin') }}"><i class="fa fa-user"></i> Admin</a></li>
         @else
           <li><a href="{{ url('admin') }}"><i class="fa fa-user"></i> Admin</a></li>
         @endif
       @endif

       @if (Auth::check())
       <li><a href="{{ url('logout') }}"><i class="fa fa-sign-out"></i> Logout</a></li>
       @else
          @if (!empty($page) && $page == 'login')
             <li class="active"><a href="{{ url('login') }}"><i class="fa fa-sign-in"></i> Login</a></li>
          @else
             <li><a href="{{ url('login') }}"><i class="fa fa-sign-in"></i> Login</a></li>
          @endif
       @endif
   </ul>   
 </div><!--/.nav-collapse -->

我已经对其进行了测试,它运行良好,但我只是想知道这是否会影响应用程序的性能,使其变慢?如果是这样,有没有更好的方法来做到这一点?就是这样,谢谢!

【问题讨论】:

  • 按照你的要求,好像没问题。
  • 我使用了相同的逻辑..完美运行..
  • @SagarGautam 即使是高流量网站?

标签: laravel laravel-5


【解决方案1】:

这不会影响您的应用程序速度。几个if/else 块不会有太大变化。这个用户的角色将被加载到每个页面上,但这可能是一个非常简单的查询,Laravel 足够聪明,每次请求只执行一次这个查询。

所以结论:这看起来不错。 :)

【讨论】:

  • 那么即使是高流量网站也可以吗?
  • 是的,此代码对于高流量网站不会有任何问题。
猜你喜欢
  • 1970-01-01
  • 2021-08-05
  • 1970-01-01
  • 2010-10-24
  • 1970-01-01
  • 2022-01-13
  • 1970-01-01
  • 1970-01-01
  • 2019-12-19
相关资源
最近更新 更多