2017-08-15 24 views
-1

我第一次使用网络守卫来创建其他类型的用户,在我的情况下是候选人和雇主,它看起来工作正常,但我注意到一个细节,我有一个名为nav.blade.ph p的部分,我有菜单标题和用户帐户链接列表,如果用户登录它应显示管理的链接,如果没有它显示用于登录或注册的按钮。菜单部分更新,当我登录时,但我注意到它只适用于当一个警卫内部的路线,我不明白为什么不工作的部分导航例如在主页上(中间件外) 。未通过身份验证时显示数据(守卫)

有人能告诉我什么是缺失?

路线:

Route::get('/','[email protected]'); 

// CANDIDATE PRIVATE AREA 
Route::group(['middleware' => ['auth:candidate']], function() { 

    Route::prefix('candidate')->group(function(){ 
     Route::get('/panel','[email protected]'); 

}); 

部分nav.blade.php

@if(Auth::check()) 
        <li class="dropdown"> 
         <a href="/" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{{ Auth::User()->name }} <span class="caret"></span></a> 
         <ul class="dropdown-menu"> 

          @if(Auth::guard('employer')->check()) 
           <li><a href=""><span class="glyphicon glyphicon-home" aria-hidden="true"></span> Dashboard</a></li> 

           <li><a href=""><span class="glyphicon glyphicon-user" aria-hidden="true"></span> Settings</a></li> 
           <li><a href=""><span class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span> Online Store</a></li> 
          @endif 

          @if(Auth::guard('candidate')->check()) 
           <li><a href="{{route('candidate-dashboard')}}">Panel</a></li> 
          @endif 

          <li role="separator" class="divider"></li> 

           <li> <a href="{{ route('logout') }}" 
            onclick="event.preventDefault(); 
                document.getElementById('logout-form').submit();"> 
             <span class="glyphicon glyphicon-log-out" aria-hidden="true"></span> Logout 
           </a></li> 

           <form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;"> 
            {{ csrf_field() }} 
           </form> 
          @else 
           <div class="navbar-form"> 
            <a class="btn btn-success " href="">Login</a> | <a class="btn btn-success " href="">Register</a> 
           </div> 


          @endif 

回答

0

试试这个:

Route::get('/','[email protected]'); 

// CANDIDATE PRIVATE AREA 
Route::group(['middleware' => ['guest:candidate']], function() { 

    Route::prefix('candidate')->group(function(){ 
     Route::get('/panel','[email protected]'); 

}); 
相关问题