0

我正在使用 Laravel 框架做我的项目。一切似乎都很完美。但是,在我的登录部分,我想做一些事情,比如当用户登录系统时,它会检查“is_admin”列。如果“is_admin”列等于 1,它将直接进入管理页面。我一直在互联网上寻找,但我找不到这个问题的答案。我也确实使用了中间件,但它没有用。我不知道为什么。有人可以帮我解决这个问题。谢谢

4

2 回答 2

0

你可以在你的AuthController.php

if(Auth::user()->is_admin == 1){
    protected $redirectTo = 'admin';
}else{
    protected $redirectTo = 'member';
}

avobe 代码仅用于重定向。您可以使用中间件来保护管理面板免受成员的侵害。

于 2015-11-30T19:02:10.590 回答
0

Laravel 5.1 允许授权,你可以在你的AuthServiceProvider

public function boot(GateContract $gate){
    $gate->define('admin', function($user){
        return $user->is_admin;
    });
}

然后Gate在你的控制器中使用外观,比如

$user=Auth::user();
if(Gate::allows('admin', $user)){
    //user is admin
}

看看这部分 Laravel 的文档 http://laravel.com/docs/5.1/authorization

于 2015-11-30T16:25:56.540 回答