touhidurabir/laravel-multi-key-route-binding

一个用于处理基于多个键的模型路由绑定的简单Laravel扩展包

1.0.1 2021-10-29 10:29 UTC

This package is auto-updated.

Last update: 2024-08-29 05:44:16 UTC


README

一个简单的Laravel扩展包,用于处理基于多个键/列的路由模型绑定

安装

使用Composer安装此包

composer require touhidurabir/laravel-multi-key-route-binding

使用方法

在需要UUID附加的模型中使用特性 HasMultipleRouteBindingKeys

use Touhidurabir\MultiKyeRouteBinding\HasMultipleRouteBindingKeys;
use Illuminate\Database\Eloquent\Model;

class User extends Model {
    
    use HasMultipleRouteBindingKeys;
}

然后添加受保护的属性 $routeBindingKeys,它将包含其他路由绑定键的列表。

/**
 * The attributes that will be used for multiple key binding on route models
 *
 * @var array
 */
protected $routeBindingKeys = [
    'email',
    'username'
];

默认情况下,列 id 被认为是路由模型绑定的主键。但是,始终可以根据Laravel文档(按需自定义主键)进行覆盖/自定义。

/**
 * Get the route key for the model.
 *
 * @return string
 */
public function getRouteKeyName()
{
    return 'slug';
}

此包还提供了一些安全措施,通过检查模型表是否有给定的绑定键列。

如果模型表模式中没有找到绑定键列,它将跳过该绑定键。

贡献

欢迎提交拉取请求。对于重大更改,请首先提交一个问题来讨论您想要更改的内容。

请确保适当地更新测试。

许可证

MIT