floor9design / laravel-uuid-model-support
为 Laravel 模型提供易于支持 UUID 的特性
0.0.1
2024-09-21 09:21 UTC
Requires
- php: >=8.2
- ext-json: *
- laravel/framework: ^11.0
- ramsey/uuid: ^4.7
Requires (Dev)
- mockery/mockery: ^1
- phpstan/phpstan: ^1.0.0
- phpunit/phpunit: ^11.0||^10.0
This package is auto-updated.
Last update: 2024-09-27 09:03:39 UTC
README
一个快速实现的用于 laravel 模型的 Trait,使用 Ramsey\Uuid
简介
Laravel 模型具有默认行为,这些行为与优秀的 Ramsey\Uuid 类不兼容。
例如,除非在模型中重写,否则 newUniqueId()
将无法按预期工作。这些 Traits 提供了合理的默认值。
功能
该包提供形式为 Uuid[x]
的 UUID 特性,提供以下方法:
newUniqueId()
uniqueIds()
目前支持 UUIDv1 和 v4 - 其他版本正在开发中。
安装
通过 Composer/packagist
composer require floor9design/laravel-uuid-model-support
通过 git
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 兼容的系统中自动加载。
测试
可以按以下方式运行测试:
./vendor/phpunit/phpunit/phpunit
以下测试还会创建代码覆盖率(通常保持在 100%):
./vendor/phpunit/phpunit/phpunit --coverage-html docs/tests/
可以使用 phpstan 进行静态分析和代码审查
./vendor/bin/phpstan
致谢
变更日志
变更日志在此生成
许可证
此软件可在 MIT 许可证下使用。