スポンサーリンク

[Laravelチュートリアル] 社員管理システム DBテストデータをシーダで作成

社員管理システム DBテストデータをシーダで作成

artisanコマンドで社員テーブルのシーダファイルを作成します。

php artisan make:seeder EmployeesTableSeeder

作成したEmploEmployeesTableSeeder.phpに、テストデータをインサートする内容をコーディングする。

<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;

class EmployeesTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        DB::table('employees')->insert([
            'employee_id' => 'r.tanaka',
            'name' => '田中亮介',
            'name_kana' => 'タナカリョウスケ',
            'birthday' => '1956-02-05',
            'nyusya_date' => '1990-04-01',
            'created_at' => now(),
            'updated_at' => now()
        ]);

        DB::table('employees')->insert([
            'employee_id' => 'y.tanaka',
            'name' => '田中大和',
            'name_kana' => 'タナカヤマト',
            'birthday' => '1961-12-05',
            'nyusya_date' => '1991-04-01',
            'created_at' => now(),
            'updated_at' => now()
        ]);

        DB::table('employees')->insert([
            'employee_id' => 'm.tsuda',
            'name' => '津田恵',
            'name_kana' => 'ツダメグミ',
            'birthday' => '1988-12-05',
            'nyusya_date' => '1994-02-01',
            'created_at' => now(),
            'updated_at' => now()
        ]);        

    }
}

database\seeders\DatabaseSeeder.phpのrunメソッドに、EmployeesTableSeederのクラスを追加し、シーダ処理を実行できるよう設定します。

    public function run()
    {
        $this->call(EmployeesTableSeeder::class);
    }

artisanコマンドで、シーダ処理を実行して、テストデータを作成します。

php artisan db:seed

テーブルのレコードを確認するとテストデータが作成されました。