Laravel:关系角色和权限

Laravel:关系角色和权限,laravel,has-and-belongs-to-many,relation,Laravel,Has And Belongs To Many,Relation,我正在创建一个授权管理系统。但是,在创建新用户时,通过向用户分配角色,不会授予与用户相关的权限,我希望在通过分配角色分配新用户时自动授予用户权限 控制器: public function store(UserCreateRequest $request) { $data = $request->all(); $user = User::create($data); if ($user && $user instanceof User) {

我正在创建一个授权管理系统。但是,在创建新用户时,通过向用户分配角色,不会授予与用户相关的权限,我希望在通过分配角色分配新用户时自动授予用户权限

控制器:

public function store(UserCreateRequest $request)
{

    $data = $request->all();
    $user = User::create($data);
    if ($user && $user instanceof User) {
        $id =$data['roles'];
        $user->roles()->attach($id);
        return redirect()->back();
    }
}
用户模型:

public function permissions()
{
    return $this->belongsToMany(Permission::class);
}

public function roles()
{
    return $this->belongsToMany(Role::class);
}
权限模型:

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

public function roles()
{
    return $this->belongsToMany(Role::class);
}
榜样:

public function permissions()
{
    return $this->belongsToMany(Permission::class);
}

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

如何建立正确的关系?

用户有多个角色,角色有多个权限,用户有多个权限。首先在关系定义中更改它们。