Laravel 5.2自定义身份验证

时间:2016-01-13 18:12:57

标签: php laravel authentication laravel-5 laravel-5.2

我使用名为admins的表来存储所有管理员的name|email|password|contact,而不是Laravel提供的内置用户表,我的登录/注销控制器代码如下所示。< / p>

它没有完美运行,甚至没有抛出任何错误。我需要为此配置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('/');
    }
}

1 个答案:

答案 0 :(得分:0)

如果您有多个具有相同列的表,则不应创建多个表。如果您使用一个表(可能是默认users)并且每个用户集也使用角色(adminmanager)会更好。创建多个用户表可能没有任何意义。还要考虑到将来你可能还需要不同类型的经理等等,你最终会有一些用户表而不是一个。

如果您还没有更多的表,那么您应该在未来对代码进行很多更改时真正考虑这一点。