From f697a8b634e3e3c4d27830fd18be4a20ddd6e3b9 Mon Sep 17 00:00:00 2001 From: geyuan <2732801331@qq.com> Date: Wed, 23 Sep 2026 14:05:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E6=9B=B4=E6=94=B9=E6=97=B6=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E7=A9=BA=E5=80=BC=E4=B8=8D=E8=A6=86=E7=9B=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Teachers/api/tea_api.py | 2 ++ Teachers/dao/tea_dao.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Teachers/api/tea_api.py b/Teachers/api/tea_api.py index 23a31ef..8254b00 100644 --- a/Teachers/api/tea_api.py +++ b/Teachers/api/tea_api.py @@ -32,6 +32,7 @@ def delete_tea(id:int|None,db=Depends(get_db)): @tea_api.put('/tea/{id}', summary='更新老师信息', description='输入更改的信息,可以为空') def update_tea(id: int, tea: NewTeaRequest = Depends(), db=Depends(get_db)): t = tea.model_dump(exclude_unset=True) + print(t) r = update_tea_dao(id=id, t=t, db=db) if r == 'NOT_FOUND': raise HTTPException(status_code=404, detail='老师不存在') @@ -39,6 +40,7 @@ def update_tea(id: int, tea: NewTeaRequest = Depends(), db=Depends(get_db)): raise HTTPException(status_code=400, detail='没有要更新的内容') if isinstance(r, str) and r.startswith('ERROR'): raise HTTPException(status_code=400, detail=r) + #先确认是字符串再调用字符串方法判断是不是以错误开头,是就报错给前端 return {'detail': '更新成功'} #根据任意信息删除 diff --git a/Teachers/dao/tea_dao.py b/Teachers/dao/tea_dao.py index e99fcc6..6e6cba9 100644 --- a/Teachers/dao/tea_dao.py +++ b/Teachers/dao/tea_dao.py @@ -39,7 +39,7 @@ def update_tea_dao(id, t, db): if not obj: return 'NOT_FOUND' for k, v in t.items(): - if hasattr(obj, k): + if hasattr(obj, k) and v is not None and v != '': setattr(obj, k, v) db.commit() return 'OK'