0

我在其中配置services.admin.key了一封电子邮件,其中包含应用程序管理员的电子邮件。

该应用程序只有一名管理员。您是否知道最好的方法,以便可以从 Git 访问代码的人可以运行命令来配置用户?例如,如果它是一个包含三列的表:

name: admin
email: the email configured in`services.admin.key`
password: sometestpass

如何允许有权访问该项目的人运行某些命令来创建一个具有这些详细信息的用户?你知道最好的方法是什么吗?如果应该使用播种机或其他方法,我怀疑如何正确处理这个问题?

例如,我在某些视图中使用的用户模型上有这个方法来检查当前用户是否是管理员。

 public function isAdministrator ()
 {
     if ($this->email == config('services.admin.key')) 
     {
            return true;
     }

     return false;
 }
4

1 回答 1

1

如果您谈论本地数据库上的新项目,最好为管理员用户准备好播种机。(不是远程数据库)。假设我可以访问 git repo 我可以克隆项目,并运行 composer install 以获取依赖项,而不是 PHP 命令php artisan migrate --seed,最好让播种机准备好创建管理员。要制作播种机,您需要php artisan make:seed AdminSeeder 在 AdminSeeder 文件中写入如下内容:

User::create(['name' => 'admin', 'email' => config('services.admin.key')),'password' => bcrypt('sometestpass'),]);

比在 Database/seeders/DatabaseSeeder.php 中写 $this->call(AdminSeeder::class); 的都好。现在,当有人获得新项目时,它会执行 3 个命令来准备好一切。

  1. composer install
  2. php artisan migrate --seed
  3. php artisan key:generate

希望我能正确理解您的需求。

于 2021-10-26T06:40:58.303 回答