neon/model-uuid

1.0.2 2024-07-05 08:04 UTC

This package is auto-updated.

Last update: 2024-09-05 08:26:42 UTC


README

此特性是 NEON 的基本组成部分之一。它将 Laravel Eloquent 模型转换为使用 UUID 作为主键。

安装

您可以通过 composer 安装此包

composer require neon/model-uuid

这将安装特性本身。

用法

要在模型上使用它,您必须使迁移准备就绪,以便使用字符串键而不是递增整数

  /** Create `awesome_uuids` table.
   * 
   * @return void
   */
  public function up()
  {
    Schema::create('awesome_uuids', function (Blueprint $table) {
      $table->uuid('id')
        ->primary();
    });
  }

只需在模型上使用此特性即可。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Neon\Models\Traits\Uuid;

class AwesomeUuid extends Model
{
    use Uuid;
}

它是如何工作的?

特性会初始化自身以更改模型的关联属性

  • incrementing 设置为 false。
  • keyType 设置为 "string"。

模型的引导过程也发生了改变:在模型引导后,将设置 UUID 作为主键值。这就像自动递增一个数字,但设置在 PHP 端而不是数据库端。

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件