Laravel身份验证管理区域

时间:2016-05-31 20:37:52

标签: laravel laravel-5.2

我希望能够指出我网站的方向。我正在尝试使用laravel身份验证,但是不需要能够注册用户。我只需要能够登录以进入管理区域。我怎么能这样做?

我正在使用laravel 5.2

2 个答案:

答案 0 :(得分:1)

您可以使用Laravel提供的auth脚手架,只使用普通用户作为管理员用户,因为您的应用程序无论如何都不会注册新用户。这是另一种方式

class AdminsController extends Controller
{
    public function getLogin()
    {
        return view('admin.login');
    }

    public function postLogin(Request $request)
    {
        $this->validate($request, ['email' => 'required|email', 'password' => 'required']);

        if(!Auth::attempt(['email' => $request['email'], 'password' => $request['password']])) {
            return redirect()->back()->with(['fail' => 'Could not log you in!']);
        }

        return redirect()->route('admin.dashboard');

    }

    public function getLogout()
    {
            Auth::logout();
            return redirect()->route('index');
    }
}

在routes.php中:

Route::group(['middleware' => ['guest']], function () {

    Route::get('/admin/login', [
        'uses' => 'AdminsController@getLogin',
        'as' => 'admin.login'
    ]);

    Route::post('/admin/login', [
        'uses' => 'AdminsController@postLogin',
        'as' => 'admin.login'
    ]);
});

Route::group(['middleware' => ['auth']], function () {
    Route::get('/admin/logout', [
        'uses' => 'AdminsController@getLogout',
        'as' => 'admin.logout'
    ]);
});

希望您能够使用此代码,并且它很有帮助。

答案 1 :(得分:0)

也许你可以参考这个Can anyone explain Laravel 5.2 Multi Auth with example。因为我无法发表评论,所以我试着通过答案部分提供帮助。