如何在laravel中进行用户管理员

时间:2019-01-28 06:11:32

标签: php laravel

我想要

我正在使用 laravel 5.7 创建一个项目,并且需要让用户成为admin,并且我没有单独的表单,并且我只能以users的身份进行1次迁移,我实现一个人可以成为管理员?

我做到了

我在user migration中做出了一个条件,即如果用户拥有id == 1然后更新is_admin = 1,但是存在一个缺陷,即如果我的网站上的流量很大,那么如果我运行{ {1}},并且在刷新数据库后,如果用户在注册我之前先注册,那么他将成为管理员,这就是我所不需要的。

2 个答案:

答案 0 :(得分:1)

在执行了这些步骤之后,要继续回答Ali Ozen的问题... 使用php artisan make:seeder UserSeeder

创建播种机

在种子文件中,在下面添加

use App\User;

User::create(['name' => 'Admin', 'email' => 'admin@example.com', password' => bcrypt('password'), 'is_admin' => 1]);

UserSeeder :: class 添加到DatabaseSeeder.php

然后使用

运行迁移
php artisan migrate --seed

要刷新运行

php artisan migrate:refresh --seed

答案 1 :(得分:0)

php artisan make:migration add_is_admin_to_users_table --table="users"

之后,打开最新的迁移文件。在功能向上功能中

Schema::table('users', function (Blueprint $table) {
        $table->boolean('is_admin')->default(0);
    });

写这个。然后运行php artisan迁移。 而已。您不需要刷新。