LoginSignup
0
0

More than 3 years have passed since last update.

ModelとSeederの作成(Laravelでウェブアプリを作ろう④)

Last updated at Posted at 2021-05-01

Model(モデル)

Modelはテーブルとマッピングされたオブジェクトで、DB操作を行うためにクラスです。

Modelの作成

Modelはテーブル名の単数系を名前につけることで、自動的にそのテーブルとマッピングします。

ローカル環境でのModelの作成
php artisan make:model モデル名
docker環境でのModelの作成
docker-compose exec app php artisan make:model モデル名

Seeder(シーダー)

Seederはテストデータやマスタデータなどのアプリケーション起動時に必要なレコードをコマンドで登録する仕組みです。

Seederの作成

Seederの作成
php artisan make:seeder データベースのテーブル名TableSeeder

シーディング時に[public function run()]関数が呼ばれるので、ここに追加したいレコードの情報を記載しておきます。
最後にforeachでcreate関数を呼び出して登録処理を行います。

UseresTableSeeder.php
<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;
use \App\Models\User;


class DatabaseSeeder extends Seeder
{
    public function run()
    {
        $users = [
            [
                'title' => "タイトル1",
                'description' => "説明1",
            ],
            [
                'title' => "タイトル2",
                'description' => "説明2",
            ],
            [
                'title' => "タイトル3",
                'description' => "説明3",
            ]
        ];

        //一括登録
        foreach($users as $user) {
            User::create($user);
        }
    }
}

Seeding(シーディング)

ローカル環境でのSeeding
php artisan db:seed
docker環境でのSeeding
docker-compose exec app php artisan db:seed

mysqlに対しselect文を発行し、レコードが追加できていればOKです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0