juststeveking / laravel-key-factory
一个简单的包,用于生成 Eloquent 模型键
1.1.0
2022-11-15 10:17 UTC
Requires
- php: ^8.0
- illuminate/contracts: ^8.37 || 9.x
- spatie/laravel-package-tools: ^1.4.3
Requires (Dev)
- brianium/paratest: ^6.2
- nunomaduro/collision: ^5.3 || 6.x
- orchestra/testbench: ^6.15 || 7.x
- phpunit/phpunit: ^9.3
- spatie/laravel-ray: ^1.9
- vimeo/psalm: ^4.4
README
Laravel Key Factory 是一个简单的包,用于轻松地为您的模型生成 Eloquent 模型键。这通常是我在使用 UUID 时会做的事情,UUID 可能不太友好,所以我使用模型键,为每个模型生成唯一的字符串。
安装
您可以通过 composer 安装此包
composer require juststeveking/laravel-key-factory
您可以使用以下命令发布和运行迁移
您可以使用以下命令发布配置文件
php artisan vendor:publish --provider="JustSteveKing\KeyFactory\KeyFactoryServiceProvider" --tag="key-factory-config"
这是已发布配置文件的内容
return [ 'key' => [ 'length' => 20, ] ];
用法
这是一个非常简单的包。有两个可用的方法来生成键
使用键工厂
$key = \JustSteveKing\KeyFactory\KeyFactory::generate( prefix: 'test', // what you want to prefix your keys with. length: 20, // optional - the default of 20 is set in the config. );
使用 Str 辅助函数
$key = \Illuminate\Support\Str::key( prefix: 'test', // what you want to prefix your keys with. length: 20, // optional - the default of 20 is set in the config. );
Eloquent 集成
有一个名为 HasKey
的 Eloquent 模型特质可供使用,它将
当您创建一个 Eloquent 模型时,特质将被启动。它将获取模型名称的前三个字符,强制转换为小写并附加一个 "_",然后使用此作为键工厂的前缀
示例
- 用户模型:
use_12345678909876543212
- 项目模型:
pro_12345678909876543212
目前这并不是一个配置选项,因为它很容易覆盖或自行实现。
测试
composer test
更新日志
请参阅 更新日志 了解最近的变化信息。
贡献
请参阅 贡献指南 了解详细信息。
安全漏洞
请参阅 我们的安全策略 了解如何报告安全漏洞。
鸣谢
许可
MIT 许可证 (MIT)。请参阅 许可文件 了解更多信息。