gpt4 book ai didi

php - Laravel:如何创建自定义枢轴模型?

转载 作者:可可西里 更新时间:2023-11-01 13:28:07 26 4
gpt4 key购买 nike

我正在从事一个在 UserClub 之间有多对多关系的项目。这种关系有效,我可以通过以下方式获取相应的对象:$user->clubs。我将数据透视表命名为 memberships。我可以使用 $club->pivot 获取数据透视表。外键是为迁移中的 memberships 表定义的。

但是,我希望数据透视表由一个模型表示,这样我就可以轻松地更新 Membership 的属性,例如角色(或者甚至添加一个 Role模型到 Membership!) 或 status

我看过文档中的“Defining A Custom Pivot Model”,但它所说的对我不起作用,我得到:


错误异常
传递给 Illuminate\Database\Eloquent\Model::__construct() 的参数 1 必须是数组类型,对象给定

我也看过 this description如何做到这一点,但它或多或少与上述相同。

成员资格模型:

class Membership extends Eloquent {

protected $table = 'memberships';

public function user()
{
return $this->belongsTo('User');
}

public function club()
{
return $this->belongsTo('Club');
}
}

有人做过吗?

最佳答案

这已由 suggestion by a reddit user 解决在我的成员(member)模型中扩展 Pivot。我还必须将 ->withPivot('status', 'role')->withTimestamps() 添加到 User 和 Club 模型中的关系声明中。

关于php - Laravel:如何创建自定义枢轴模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21203542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com