floor9design/laravel-uuid-model-support

为 Laravel 模型提供易于支持 UUID 的特性

0.0.1 2024-09-21 09:21 UTC

README

Latest Version Packagist Software License

Build Status Code Coverage

Github Downloads Packagist Downloads

一个快速实现的用于 laravel 模型的 Trait,使用 Ramsey\Uuid

简介

Laravel 模型具有默认行为,这些行为与优秀的 Ramsey\Uuid 类不兼容。

例如,除非在模型中重写,否则 newUniqueId() 将无法按预期工作。这些 Traits 提供了合理的默认值。

功能

Latest Version Packagist

该包提供形式为 Uuid[x] 的 UUID 特性,提供以下方法:

  • newUniqueId()
  • uniqueIds()

目前支持 UUIDv1 和 v4 - 其他版本正在开发中。

安装

通过 Composer/packagist

Packagist Downloads

composer require floor9design/laravel-uuid-model-support

通过 git

Github Downloads

git clone https://github.com/floor9design-ltd/laravel-uuid-model-support.git

或者

git clone git@github.com:floor9design-ltd/laravel-uuid-model-support.git

用法

在模型中添加一个 use 语句,并确保选择正确的类。

例如,一个用户模型可能如下所示:

namespace App\Models;

use Floor9design\LaravelUuidModelSupport\Uuid4;
// ...
class User extends Authenticatable
{
    use Uuid4;
    // ...
   

设置

不需要特定的配置设置步骤。类应在 PSR-4 兼容的系统中自动加载。

测试

Build Status Code Coverage

可以按以下方式运行测试:

  • ./vendor/phpunit/phpunit/phpunit

以下测试还会创建代码覆盖率(通常保持在 100%):

  • ./vendor/phpunit/phpunit/phpunit --coverage-html docs/tests/

可以使用 phpstan 进行静态分析和代码审查

  • ./vendor/bin/phpstan

致谢

变更日志

变更日志在此生成

许可证

此软件可在 MIT 许可证下使用。