eig/eloquent-uuid

为 Eloquent 模型添加 UUID 的简单工具

3.0.0 2022-12-08 16:41 UTC

This package is auto-updated.

Last update: 2024-09-08 20:52:53 UTC


README

Build Status Latest Stable Version Coverage Status License StyleCI Total Downloads Latest Unstable Version

一个用于轻松为支持 Laravel 5.5+ 的 Eloquent 模型添加 UUID 的包

用法

要使用 Eloquent 模型中的 UUID,使用以下命令安装包

composer require eig/eloquent-uuid

然后,在你的模型中,不要扩展 Model,而是像这样扩展 EloquentUUID

<?php

namespace App;

use eig\EloquentUUID\EloquentUUID;

class UUIDModel extends EloquentUUID
{

}

然后,在你的迁移中,确保将 id 设置为字符串或 uuid,如下所示

public function up()
    {
        Schema::create('client_models', function (Blueprint $table) {
            $table->uuid('id');
            $table->softDeletes();
            $table->timestamps();
        });
    }

用户 UUID 模型

对于 Laravel 5.3+,框架自带的默认用户模型扩展了 Authenticatble 以支持新的多认证系统。要向用户模型添加 UUID,可以扩展 eig\EloquentUUID\UUIDUser,这将向用户添加 UUID 同时仍然扩展 Laravel 的 Authenticatable 类。扩展 EloquentUUID 的迁移方案与从 UUIDUser 扩展的迁移方案相同。

UUID 特性

从版本 1.1.0 开始,EloquentUUID 现在在 eig\EloquentUUID\Traits\UUID 命名空间中包含一个名为 UUID 的特性,您可以使用它来组合一个 UUID 类。该特性在 __constructor() 方法中实现了 UUID 分配。扩展 EloquentUUID 的迁移方案与使用 UUID 特性相同。

支持的 PHP 版本