首页 文章

如何用户将id插入数据透视表? laravel 5.4

提问于
浏览
0

我想创建用户角色系统,为此我制作了三个表:用户,角色和role_user透视表,用户和角色受到以下约束:

public function role()
{
    return $this->belongsToMany(Role::class, 'role_user');
}

其中有一个belongsToMany关系,而pivot表存储了用户id和角色id,一切都很好,我能够检索用户角色,但是进入数据透视表我从phpmyadmin页面手动插入数据,我的问题是如何将id插入到数据透视表中用户?

1 回答

  • 0

    :)

    我不是100%肯定,但你可以在你的用户模型上使用attach()方法 .

    示例(确保在模型中设置$ fillable) .

    $user = User::create([
        'name' => 'Me!',
        'email' => 'my@email.com',
    ]);
    
    $role = Role::create([
        'name' => 'First role',
    ]);
    

    现在你可以这样做:

    $user = User::first();
    $user->role()->attach($role);
    

    我希望你理解!祝好运 . :)

相关问题