如何从数据库

时间:2018-02-04 19:02:41

标签: php laravel

任何团体都知道如何通过laravel认证?或者从数据库或源代码添加管理员?假设您已创建管理面板和管理员用户,但您丢失了数据库,现在您只想为面板创建新的管理员用户。我使用默认的laravel身份验证和管理面板的中间件。这是在kernel.php中添加的中间件

        'admin' => \App\Http\Middleware\AuthAdmin::class,

这里我们有角色控制器

 if(Auth::user()->isSuperAdmin()) {
        $objects = Role::select($this->dt_fields_db)->where('id','<>',1)->where('id','<>',3);
    } else {
        $objects = Role::select($this->dt_fields_db)->where('id','>',3);
    }

2 个答案:

答案 0 :(得分:2)

创建一个新的Seeder类,创建一个用户和超级管理员角色,将角色分配给用户,永远成为超级管理员。

public class SuperAdminSeeder {
    public function run () {
        // modify to following commands fit your table structure
        $role = Role::create(['name' => 'super_admin'];
        $user = User::create(['email' => 'your@email.com', 'password' => bcrypt('secret')]);
        DB::table('role_user')->insert(['user_id' => $user->id, 'role_id' => $role->id]);
    }
}

通过命令行调用它:

php artisan db:seed --class=SuperAdminSeeder::class

答案 1 :(得分:0)

只需运行php artisan make:authphp artisan migrate。然后,将浏览器导航到http://your-app.dev/register或分配给您的应用程序的任何其他URL。这两个命令将负责整个身份验证系统的搭建。