Laravelのテーブルに初期値をインサートする方法

Laravelのテーブル自体を、

migrationなどで作成することは多いです。

そんな中で、

初期値として1行のレコードをインサートしたい

という要望はよくあります。

そんな時は、

LaravelのSeedingという方法を使うことで、

簡単に初期値を追加できるので、

環境を作って、初期レコードをテーブルに入れたい

という時は、この方法がおすすめです。

Laravelのテーブルに初期値をインサートする方法

参考にするべき公式ドキュメント

まずは何よりも公式ドキュメントを参考にしましょう。

Laravelの公式ドキュメントは、

すごく丁寧にまとめられているので、

非常に参考にしやすいと思います。

【準備】インサートするデータを定義する

Seedingを行うことで、

テーブルの初期値としてインサートできますが、

その設定自体は、

【Laravelのフォルダ】/database/seeds/DatabaseSeeder.php

というファイルで設定します。

中身の参考として、

簡単な例を載せておきます。

<?php
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
    /**
     * Seed the application's database.
     *
     * @return void
     */
    public function run()
    {
        $this->call('HogeTableSeeder');
        $this->command->info('User table seeded!');
    }
}
class HogeTableSeeder extends Seeder {
    public function run()
    {
      DB::table('hoge_table')->delete();
      DB::table('hoge_table')->insert(array("hoge_column" => "setting value"));
    }
}

【実行】実際にデータをインサートする

先ほどの

【Laravelのフォルダ】/database/seeds/DatabaseSeeder.php

というファイルに、

インサートするデータの設定が終わったら、

あとは実行するのみです。

実行は、artisanのオプションに用意されています。

artisanも含めた実行コマンドは、

php artisan db:seed

このようになるので、

このコマンドを実行すれば初期データのインサートが完了です。

スキルを使って、就職/転職/副業する時のサイト

プログラミングのスキルなどを、自分なりに高めた上で、

自分のスキルをアピールして就職や転職を行い、年収をあげるか、

副業という形で、年収にプラスアルファの稼ぎを増やすことはできます。

まずはできる範囲で取り組むことで、

少しずつ、経験値も増え、自分のスキルが収入につながるのでおすすめです。

おすすめ書籍

広告

おすすめ記事