4.

Laravelにおけるモデルの(複合)主キーの指定方法とインクリメントについて

編集
この記事の要点
  • Laravel Eloquent モデルで主キー自動採番を指定する方法
  • 主キーのカラム名変更: protected $primaryKey = 'user_id';
  • 主キーが整数でない場合: protected $keyType = 'string';
  • 自動採番無効: public $incrementing = false;(UUID 主キー等)

 

Laravelのモデルに主キーを指定するには以下の様に$primaryKeyにカラム名を代入する。

namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    protected
$primaryKey = 'user_id';

    public $incrementing = false;
}

主キーがインクリメントしない場合は$incrementingをfalseとする。

 

複合主キーを指定する場合は以下の通り。

namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    protected
$primaryKey = ['user_id', 'user_type'];
}

 

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. モデルの作成
  2. $fillable $guarded $hiddenの説明
  3. テーブルの紐づけ
  4. 主キーの指定とインクリメント
  5. タイムスタンプ
  6. モデルでselect
  7. モデルでinsert
  8. モデルでupdate
  9. 現在値に加算する方法
  10. created_at/updated_atの別名指定