feat: 菜单树缺少根节点异常处理

This commit is contained in:
zy7y
2022-09-18 15:01:20 +08:00
parent 80947a608e
commit aefb93b399
8 changed files with 232 additions and 227 deletions

View File

@@ -4,8 +4,14 @@ from fastapi import Query
from core.utils import list_to_tree
from dbhelper.menu import get_menu
from dbhelper.role import (del_role, get_role, get_role_menus, get_roles,
new_role, put_role)
from dbhelper.role import (
del_role,
get_role,
get_role_menus,
get_roles,
new_role,
put_role,
)
from schemas import ListAll, Response, RoleIn, RoleInfo, RoleQuery, RoleRead
@@ -22,7 +28,11 @@ async def role_has_menu(rid: int):
menus = await get_role_menus(rid)
for obj in menus:
obj["meta"] = json.loads(obj["meta"]) if obj["meta"] is not None else None
return Response(data=list_to_tree(menus))
try:
result = list_to_tree(menus)
except KeyError:
return Response(code=400, msg="菜单缺少根节点.")
return Response(data=result)
async def role_arr(

View File

@@ -2,8 +2,15 @@ from fastapi import Depends, Query
from starlette.requests import Request
from core.security import check_token, get_password_hash
from dbhelper.user import (del_user, get_user, get_user_info, get_users,
insert_user, put_user, select_role)
from dbhelper.user import (
del_user,
get_user,
get_user_info,
get_users,
insert_user,
put_user,
select_role,
)
from schemas import Response, UserAdd, UserInfo, UserPut, UserQuery, UserRead
from schemas.common import ListAll