diff --git a/internal/database.py b/internal/database.py index f1b75e8..968a80d 100644 --- a/internal/database.py +++ b/internal/database.py @@ -64,12 +64,21 @@ def raise_if_exists(item, message="Item already exists"): # 成功响应数据 def response_success(data={}, message="data do success"): - if not data: + if data is None: + # 如果 data 未传递,返回无 data 的响应 return { "status": status.HTTP_200_OK, "message": message, } + elif not data: + # 如果 data 传递了但是为空,返回空列表作为 data 的响应 + return { + "status": status.HTTP_200_OK, + "message": message, + "data": [] + } else: + # 如果 data 非空,返回包含 data 的响应 return { "status": status.HTTP_200_OK, "message": message, diff --git a/routers/blogmanage.py b/routers/blogmanage.py index 7a6b247..cd00dba 100644 --- a/routers/blogmanage.py +++ b/routers/blogmanage.py @@ -47,7 +47,7 @@ async def blog_put(blog: Blog, id: str = Path(description="博客id")): execute_query(update_query, update_data) return response_success("blog update sucess") -# 博客查询 +# 博客模糊查询 @router.get("/list/search") async def blog_list_search( blogtitle: str = Query(None, description="博客标题"), @@ -72,3 +72,10 @@ async def blog_list_search( select_query += " ORDER BY create_at DESC" blog_list = fetch_all(select_query, params=params, fetchall=True) return response_success(data=blog_list,message="blog serach succuessfully!") + +# 根据id查询博客 +@router.get("/list/search/{id}") +async def get_id_blog(id:str=Path(description="博客id")): + select_query="SELECT * FROM blogs WHERE id=%s" + blog_list=execute_query(select_query,(id,)) + return response_success(data=blog_list,message="blog search success") \ No newline at end of file