cleaniquecoders / laravel-uuid
为您的Laravel应用程序使用UUID。
Requires
- php: ^8.0|^8.1|^8.2
- doctrine/dbal: ^3.6
- illuminate/auth: ^9.0|^10.0
- illuminate/support: ^9.0|^10.0
Requires (Dev)
- laravel/pint: ^1.6
- orchestra/testbench: 7.*|8.*
- pestphp/pest: ^2.0
- phpstan/phpstan-phpunit: ^1.0
This package is auto-updated.
Last update: 2024-09-08 00:32:06 UTC
README
Laravel Uuid
此包允许您将UUID用作主键。
安装
要在您的Laravel项目中安装cleaniquecoders/laravel-uuid
,只需从终端运行composer require命令
$ composer require cleaniquecoders/laravel-uuid
使用方法
首先,您需要在迁移中定义您想使用的uuid字段
$table->uuid('uuid')->default('-');
配置您的模型以包含\CleaniqueCoders\LaravelUuid\Traits HasUuid
特质并实现\CleaniqueCoders\LaravelUuid\Contracts\HasUuid
合约。
use Illuminate\Database\Eloquent\Model; use CleaniqueCoders\LaravelUuid\Contracts\HasUuid as HasUuidContract; use CleaniqueCoders\LaravelUuid\Traits\HasUuid; class User extends Model implements HasUuidContract { use HasUuid; }
通过使用这个特质,您能够使用uuid($uuid)
作用域。另外,如果您有不同的UUID列名,可以定义protected $uuid_column = 'user_uuid'
。
$user = User::uuid($uuid)->first();
接下来,您可以使用\CleaniqueCoders\LaravelUuid\Observers\UuidObserver
来自动在保存到数据库之前设置uuid
值。您需要在App\Providers\AppServiceProvider
的boot
方法中注册
use CleaniqueCoders\LaravelUuid\Observers\UuidObserver; use App\User; ... public function boot() { User::observe(UuidObserver::class); }
或者,您可以利用Laravel Observer包。
测试
运行以下命令
$ vendor/bin/phpunit --testdox --verbose
贡献
感谢您考虑为cleaniquecoders/laravel-uuid
做出贡献!
错误报告
为了鼓励积极的协作,强烈建议提交拉取请求,而不仅仅是错误报告。“错误报告”也可以以包含失败测试的拉取请求的形式发送。
但是,如果您提交错误报告,您的问题应包含标题和问题的清晰描述。您还应尽可能提供相关信息和展示问题的代码示例。错误报告的目标是让其他人能够轻松地复制错误并开发修复方案。
请记住,错误报告是在希望有相同问题的人能够与您协作解决问题的希望下创建的。不要期望错误报告会自动看到任何活动或其他人会立即修复它。创建错误报告的目的是帮助您和他人开始解决问题的道路。
编码风格
cleaniquecoders/laravel-uuid
遵循PSR-2编码标准和PSR-4自动加载标准。
您可以使用PHP CS Fixer来保持标准一致。PHP CS Fixer配置可以在.php_cs
中找到。
许可
此包是开源软件,许可协议为MIT许可。