jaacu / laravel-model-hashids
1.0.0
2019-05-18 01:10 UTC
Requires
- php: ^7.1
- illuminate/support: 5.8.*
- vinkla/hashids: ^6.0
Requires (Dev)
- graham-campbell/analyzer: ^2.1
- graham-campbell/testbench: ^5.2
- phpunit/phpunit: ^7.0
Provides
- vinkla/hashids: ^6.0
This package is auto-updated.
Last update: 2024-09-18 13:15:51 UTC
README
兼容 Laravel 版本 5.8.x
此包允许您使用 vinkla/laravel-hashids 包在模型中使用 hashids
此包包含 vinkla/laravel-hashids 包
安装
您可以通过 composer 安装此包
composer require jaacu/laravel-model-hashids
用法
将以下代码添加到您的模型迁移中
... $table->hashid(); ...
然后简单地将 UsesHashIds 特性添加到您的模型中
use Jaacu\LaravelModelHashids\Traits\UsesHashIds; class MyModel extends Model { use UsesHashIds; }
现在,使用默认的 Laravel 路由隐式绑定将使用 hashid 而不是正常的 id
示例
使用 UsesHashIds 特性的模型
$model = Model::first();
生成 URL
route('model.show',$model); // output: http://mydomain/model/<hashid>
获取 hashid
$model->getId() // returns: the model <hashid>
配置
发布配置文件以更改默认行为
php artisan vendor:publish --provider="Jaacu\LaravelModelHashids\LaravelModelHashidsServiceProvider"
默认情况下,生成的 hashid 遵循以下结构:应用名称 + 模型名称 + 模型 ID 哈希
- 应用名称由 app.config 名称设置,可以在 config/app.php 文件中通过设置新的 'short_name' 来覆盖
- 模型名称由模型类名称设置
- 模型哈希 ID 由模型的 'id' 哈希设置
此包共享来自 vinkla/laravel-hashids 的配置文件
在 config/hashids.php 中,您可以设置哈希长度和盐
'connections' => [ 'main' => [ 'salt' => env('APP_KEY'), // Uses the env app key by default 'length' => 6, ], 'alternative' => [ 'salt' => 'your-salt-string', 'length' => 'your-length-integer', ], ]
文档
有关 hash 功能的更多信息,请参阅 vinkla/laravel-hashids
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG
贡献
有关详细信息,请参阅 CONTRIBUTING
安全
如果您发现任何安全问题,请通过电子邮件 jaacu.97@gmail.com 而不是使用问题跟踪器来报告
致谢
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件
Laravel 包模板
此包是用 Laravel 包模板 生成的。