jkbennemann / laravel-external-key
一个用于生成 Eloquent 模型键的简单包
dev-main
2022-12-04 16:05 UTC
Requires
- php: 8.*
- illuminate/contracts: 8.* || 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.31
- vimeo/psalm: ^4.4
This package is auto-updated.
Last update: 2024-09-04 19:58:55 UTC
README
Laravel Key Factory 是一个用于轻松为您的模型生成 Eloquent 模型键的简单包。这通常是我在不使用可能会很丑的 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 Factory
$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 模型时,特质会被激活。它将获取模型名称的前三个字符,将它们转换为小写并附加一个 "_",然后使用这个作为 Key Factory 的前缀
示例
- 用户模型:
use_12345678909876543212
- 项目模型:
pro_12345678909876543212
目前这不是一个配置选项,因为它很容易覆盖或自行实现。
测试
composer test
变更日志
请参阅 CHANGELOG 以获取有关最近更改的更多信息。
贡献
请参阅 CONTRIBUTING 以获取详细信息。
安全漏洞
请审查 我们的安全策略 了解如何报告安全漏洞。
鸣谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 以获取更多信息。