feat: 菜单树缺少根节点异常处理
This commit is contained in:
@@ -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(
|
||||
|
@@ -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
|
||||
|
||||
|
Reference in New Issue
Block a user