pderas / shambles
一个用于为 Laravel 模型生成和添加哈希值的库。
v3.0.2
2021-07-05 16:41 UTC
Requires
- php: >=5.5.9
- illuminate/database: >=5.1
- illuminate/routing: >=5.1
- illuminate/support: >=5.1
README
composer require pderas/shambles
目录
关于
此包是为 Laravel 设计的,可以将哈希值添加到数据库中的模型。
安装
要求
使用此包,必须满足以下要求
说明
成功要求包后,(仅适用于 v5.3)您必须在 config/app.php 文件中注册服务提供者。
Pderas\Shambles\ShamblesServiceProvider::class,
用法
如果您想为 shambles 创建一个配置文件,用于为所有模型定义默认值。
php artisan vendor:publish --provider="Pderas\Shambles\ShamblesServiceProvider"
后端
使用 shambles 时,您必须将数据库中所需模型的 'hash' 列添加到数据库中。
例如,在某个迁移中...
class MyMigration extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::table('my_table', function(Blueprint $table) { $table->string('hash')->unique(); }); } }
然后您只需将 trait 添加到模型中
use Pderas\Shambles\Traits\ShamblesTrait; class MyModel extends Model { use ShamblesTrait; $defaultHashSize = 36; // hash length can be set on a per model basis $defaultRouteKey = 'hash'; // route key can be set on a per model basis (laravel default is 'id', shambles default is 'hash') ... }
现在,每次创建新模型时,都会自动为其添加哈希值。然后您可以使用该哈希值进行查找,并隐藏模型的自动增长 id。
获取请求 ...
https:///my-model-route/{HASH}
function myModelRouteFn(Request $request, MyModel $my_model) { ... $my_model->update(...); ... }
许可证
此项目受 MIT 许可证保护。您可以在任何地方自由使用它。