2016-01-13 201 views
-1

我使用名爲admins的表來存儲所有管理員的name|email|password|contact而不是Laravel提供的內置用戶表,並且我的登錄/註銷控制器代碼如下所示。Laravel 5.2自定義身份驗證

它不完美,甚至沒有任何錯誤。我需要爲此配置config/auth.php文件嗎?如果我需要,那麼它應該是什麼樣子?假設我有另一張管理人員表,他們有像管理員那樣的name|email|password|contact。我如何配置它們?

AdminloginController:

<?php 

namespace App\Http\Controllers; 


use App\Model\Admin; 
use Illuminate\Database\QueryException; 
use Illuminate\Http\Request; 
use App\Http\Requests; 
use Illuminate\Support\Facades\Auth; 
use Illuminate\Support\Facades\Validator; 

class AdminLoginController extends Controller 
{ 
    public function postLogin(Request $request){ 
     if(Auth::attempt(['email'=> $request->email,'password'=> $request->password])){ 
      return redirect('/AdminPanel'); 
     } 
     return redirect()->back(); 
    } 
    public function getLogout(Request $request){ 
     Auth::logout(); 
     return redirect('/'); 
    } 
} 

回答

0

如果你有,你應該不想創造出很多的表相同的列多個表。如果您使用一個表(可能是默認的users),並且對於每個用戶還設置角色(adminmanager),會更好。它可能沒有意義創建多個用戶表。也考慮到將來你可能還需要不同類型的管理者等,並且你最終會有一些用戶表而不是一個。

當你沒有更多的表格時,你應該真的考慮這個問題,以後在你的代碼中沒有做太多的改變。