2016-06-30 15 views
1

私は異なるルートでuserとadminのログイン機能を実装しています。 私はユーザー経路を変更して管理経路を作成しました。Larvel 5.2でAuth :: guest()を取得しているユーザー(admin)にログインしました。

マイroutes.phpの

Route::get('/', function() { return view('welcome'); 

Route::group([ 'prefix' => 'admin', // "namespace" => ], function() { 
    Route::get('/login', '[email protected]'); 
    Route::post('/login', '[email protected]'); 
    Route::get('/logout', '[email protected]'); 
    Route::get('/home', '[email protected]'); 
    }); 

php artisan route:list 

|  | GET|HEAD | admin/home     |      | App\Http\Controllers\[email protected]     | web,auth:admin | 
|  | POST  | admin/login     |      | App\Http\Controllers\[email protected]     | web,guest:admin | 
|  | GET|HEAD | admin/login     |      | App\Http\Controllers\[email protected]   | web,guest:admin | 
|  | GET|HEAD | admin/logout     |      | App\Http\Controllers\[email protected]     | web    | 
|  | GET|HEAD | home       |      | App\Http\Controllers\[email protected]      | web,auth:user | 
|  | GET|HEAD | login      |      | App\Http\Controllers\Auth\[email protected]   | web,guest:user | 
|  | POST  | login      |      | App\Http\Controllers\Auth\[email protected]     | web,guest:user | 
|  | GET|HEAD | logout      |      | App\Http\Controllers\Auth\[email protected]     | web    | 
|  | POST  | password/email    |      | App\Http\Controllers\Auth\[email protected] | web,guest  | 
|  | POST  | password/reset    |      | App\Http\Controllers\Auth\[email protected]    | web,guest  | 
|  | GET|HEAD | password/reset/{token?}  |      | App\Http\Controllers\Auth\[email protected]  | web,guest  | 
|  | GET|HEAD | register      |      | App\Http\Controllers\Auth\[email protected] | web,guest:user | 
|  | POST  | register      |      | App\Http\Controllers\Auth\[email protected]ister    | web,guest:user | 

私は、管理ガードを追加しました。

私はユーザーと管理者としてログインできますが、私が家にいるときはまだAuth :: guest => trueを取得します。だから私は、私が望む見解を正確に得ることはできません。

app.blade.php 
... 
@if (Auth::guest()) 
     <li><a href="{{ url('/login') }}">Login</a></li> 
     <li><a href="{{ url('/register') }}">Register</a></li> 
@else 
     <li class="dropdown"> 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"> 
       {{ Auth::user()->name }} <span class="caret"></span> 
      </a> 

      <ul class="dropdown-menu" role="menu"> 
       <li><a href="{{ url('/logout') }}"><i class="fa fa-btn fa-sign-out"></i>Logout</a></li> 
      </ul> 
     </li> 
@endif 
.... 

これを解決する手段はありますか?

+0

はこちらをご覧ウェブおよび認証を必要とします。 –

+0

routes.phpファイルを表示できますか? –

+0

'ルートは::取得( '/'、関数(){ 戻りビュー)( '歓迎'; });' ' ルート::グループ([ 'プレフィックス' => '管理者'、 // ( '/ login'、 'AdminAuthController @ login'); Route :: get( '/ login'、 'AdminAuthController @ showLoginForm'); ルート: ::ルート:: get( '/ home'、 'AdminHomeController @ index'); }); Route :: auth(); :: get( '/ logout'、 'AdminAuthController @ logout') Route :: get( '/ home'、 'HomeController @ index'); ' – hanachan1026

答えて

0
Route::group(['namespace' => 'Frontend', 'middleware' => ['web','auth'], function() { 
    Route::get('/', '[email protected]');  
}); 

ミドルウェアには、上記の例のようなものが必要です。 `)>ゲスト( - `認証を試してみてください::ガード( '管理者')

は別の答えLaravel 5.2 Auth::login not persisting logged user

+0

ありがとう!私はもう何をすべきかわからなかった – hanachan1026

+0

いいえ問題は、約3日間同じエラーがあった、ちょうどWebミドルウェアを参照していなかった –

関連する問題