kdaws-com/laravel-uuid

Laravel 的 Eloquent UUID 特性

1.0.0 2021-09-20 13:37 UTC

This package is auto-updated.

Last update: 2024-09-20 19:45:32 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

一对 Eloquent 模型特性,用于处理可排序的 UUID 主键或次键。

用法

主键

模型

Use \KDAWScom\LaravelUuid\HasUuidPrimary;

class MyModel extends Model
{
    Use HasUuidPrimary;
}

迁移

return new class extends Migration
{
    public function up()
    {
        Schema::create('my_models', function (Blueprint $table) {
            $table->string('id', 36)->primary();
            
            // OR
            
            $table->string('myKeyNameWillBeAutoDiscovered', 36)->primary();
        }
    }
}

次键

模型

Use \KDAWScom\LaravelUuid\HasUuidSecondarys;

class MyModel extends Model
{
    Use HasUuidSecondary;
}

迁移

return new class extends Migration
{
    public function up()
    {
        Schema::create('my_models', function (Blueprint $table) {
            /**
             * Default key name is uuid 
             */
            $table->string('uuid', 36);

            /**
             * You can also set your own key name, but you must remember to set the value of:
             *
             * $laravelUuidSecondaryKeyName
             * 
             * to the key name inside your models boot routine
             */

            $table->string('myUuidKey', 36);
        }
    }
}