fix(permission): 修复权限获取 bug
- 将 MenuButton 查询结果改为 values_list,获取多个匹配项的 ID - 更新 RoleMenuButtonPermission 查询条件,支持多个菜单按钮 ID
This commit is contained in:
@@ -150,13 +150,13 @@ class DataLevelPermissionsFilter(BaseFilterBackend):
|
||||
re_api = re.sub(_pk,'{id}', api)
|
||||
role_id_list = request.user.role.values_list('id', flat=True)
|
||||
# 修复权限获取bug
|
||||
menu_button_obj = MenuButton.objects.filter(api=re_api, method=method).first()
|
||||
menu_button_ids = MenuButton.objects.filter(api=re_api,method=method).values_list('id', flat=True)
|
||||
role_permission_list = []
|
||||
if menu_button_obj:
|
||||
role_permission_list = RoleMenuButtonPermission.objects.filter(
|
||||
if menu_button_ids:
|
||||
role_permission_list=RoleMenuButtonPermission.objects.filter(
|
||||
role__in=role_id_list,
|
||||
role__status=1,
|
||||
menu_button=menu_button_obj).values(
|
||||
menu_button_id__in=menu_button_ids).values(
|
||||
'data_range'
|
||||
)
|
||||
dataScope_list = [] # 权限范围列表
|
||||
|
||||
Reference in New Issue
Block a user