人気のPHP WEBアプリケーションフレームワークLaravelのTipsを記録していきます

Laravel で DBテーブルとLaravelモデルに uuidを追加する

composer require webpatser/laravel-uuid

● モデルに uuid カラムを追加

マイグレーションファイルに次のように uuid 型のカラムを追加します
( 実際には CHART(36)として作成されます )

$table->uuid('uuid')->after('id')-> unique()->comment('uuid');

● uuidを自動的にセットするトレイトを作成する

/app/UuidTrait.php

<?php
namespace App;
use Webpatser\Uuid\Uuid;
trait UuidTrait
{
    public static function bootUuidTrait()
    {
       static::creating(function ($model) {
            $model->uuid = Uuid::generate()->string;
        });
    }
}

● モデルにトレイトを追加

モデルファイルに以下を追加

    use \App\UuidTrait;
No.1644
12/24 12:02

edit