拉拉维尔多对多关系(有许多或属于多)



我目前正在用Laravel构建我的第一个应用程序,偶然发现了我不知道如何设置模型(用户和组(之间的多对多关系的问题。

我创建了一个看板,在其中存储所有用户与其所在组之间的关系。 我的问题是我不知道如何在拉拉维尔中访问和设置它。 我不确定我是否必须用户拥有许多或属于许多。

我正在尝试找到一种将用户添加到组的方法,以便在用户组表中创建一个新条目。

我的桌子:

用户

  • 身份证
  • 名字
  • 电子邮件

  • 身份证
  • 名字
  • Creator_ID

用户组

  • User_ID
  • Group_ID

感谢任何帮助,谢谢!

如果要创建多对多关系,它应该是belongsToMany,而不是hasMany

Group模型中:

public function users()
{
return $this->belongsToMany(Group::class);
}

User模型中:

public function groups()
{
return $this->belongsToMany(User::class);
}

数据透视表应称为group_user

https://laravel.com/docs/5.4/eloquent-relationships#many-to-many

在模型类中,使用 belongsToMany,如下所示: https://laravel.com/docs/5.4/eloquent-relationships#many-to-many

要将用户添加到组,请使用 attach((,如下所示: https://laravel.com/docs/5.4/eloquent-relationships#the-create-method(滚动到多对多关系(

最新更新