😎

Laravel6でDBに直接初期ユーザを登録

2022/01/26に公開1

概要とさっそく結論

Laravelで初期ユーザを手動登録するにあたり、seederが最適だという話。
※ Seederまとめ記事ではありません
※ factoryには触れません

seederで設定していく

Seederの作成

$ php artisan make:seeder UsersTableSeeder
Seeder created successfully.

./database/seeds/UsersTablerSeeder.php を開いて
nameなどの各パラメータは任意で設定してください。

class UsersTableSeeder extends Seeder
{
    /**
     * データベース初期値設定の実行
     *
     * @return void
     */
    public function run()
    {
        DB::table('users')->insert([
            'name' => 'admin',
            'email' => 'hoge@hoge.hoge',
            'password' => bcrypt('password'),
        ]);
    }
}

./database/seeds/DatabaseSeeder.php を開きます。
DatabaseSeederには実行したいSeederを記述しましょう。

class DatabaseSeeder extends Seeder
{
    /**
     * Seed the application's database.
     *
     * @return void
     */
    public function run()
    {
        $this->call([
            UsersTableSeeder::class
        ]);
    }
}

db:seed を実行して以下のように出力されれば終了です。

$ php artisan db:seed
Seeding: UsersTableSeeder
Seeded:  UsersTableSeeder (0.12 seconds)
Database seeding completed successfully.

まとめ

次はFactoryの記事書きます(多分)

Discussion