Laravel - データベース - クラス


クラウディア 


1. 概要
2. 作成
3. 参考サイト

1. 概要

 テーブルに対して、クラスを作成する方法について記述します。

2. 作成

 「count」というテーブルが存在するとして。  それを扱うクラスを作成するには。  プロジェクトディレクトリで。

php artisan make:model Count

   INFO  Model [app/Models/Count.php] created successfully.
 メッセージ通り、下記のファイルができあがります。

app/Models/Count.php
 出来上がった時点で、下記の内容になっています。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Count extends Model
{
    use HasFactory;
}
 テーブルの状況により、下記のような書き込みを行います。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Count extends Model
{
    use HasFactory;

    // テーブル名がモデル名の複数形で推測される (counts)
    // もし違う名前のテーブルなら明示する
    protected $table = 'count';

    // プライマリキーが id 以外なら指定
    protected $primaryKey = 'count_id';

    // タイムスタンプ (created_at, updated_at) を使わない場合
    public $timestamps = false;

    // 更新可能なカラムを制御したい場合
    protected $fillable = ['name', 'email'];
}

3. 参考サイト

 本ページは、「ChatGPT」くんを参考にさせていただきました。