diff --git a/app/model/SysRole.php b/app/model/SysRole.php index 15fb4ba..84c0c6e 100644 --- a/app/model/SysRole.php +++ b/app/model/SysRole.php @@ -38,7 +38,7 @@ class SysRole extends BaseModel public function menus(): BelongsToMany { - return $this->belongsToMany(SysMenu::class, SysRoleMenu::class, 'menu_id', 'menu_id'); + return $this->belongsToMany(SysMenu::class, SysRoleMenu::class, 'menu_id', 'role_id'); } // 搜索定义 diff --git a/app/model/SysUser.php b/app/model/SysUser.php index 36893a8..3fedb80 100644 --- a/app/model/SysUser.php +++ b/app/model/SysUser.php @@ -49,9 +49,11 @@ class SysUser extends BaseModel public function getAuthoritiesAttr(): array { $menus = []; - $this->roles->load(['menus']); $roleIds = $this->roles->column('role_id'); dd($roleIds); + $this->roles->load(['menus']); + + foreach ($this->roles as $role) { $menus = array_merge($menus, $role->menus->hidden(['pivot'])->where('deleted', 0)->toArray()); }