From c1deb9f5457554ce2e92ba967a7c38716c982bf9 Mon Sep 17 00:00:00 2001 From: dddd <1163562824@qq.com> Date: Wed, 23 Sep 2026 17:58:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AF=B7=E6=B1=82=E4=BD=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/class_api.py | 2 +- dao/class_dao.py | 8 ++++---- models/class_model.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/api/class_api.py b/api/class_api.py index f71e3f4..38b75e6 100644 --- a/api/class_api.py +++ b/api/class_api.py @@ -51,6 +51,6 @@ def get_classes( id:int|None = None # id参数接收前端输 @classes_router.delete('/{id}',response_model=ClassResponse,summary='删除班级信息') # delete删除请求,指定返回数据格式为 ClassResponse def delete_classes(id:int,db=Depends(get_db)): # 定义删除接口函数,id参数接收前端输入的数据,参数db依赖于数据库会话的上下文管理器 r = delete_classes_dao( id , db ) # 变量r用来接收dao层delete_classes_dao函数的返回值,执行函数时以以前端输入的id 数据、db依赖函数入参 - if r : # 判断 DAO 层的返回结果,如果是True + if r!=0 : # 判断 DAO 层的返回结果,如果是True return ClassResponse( total=1,data='已成功删除班级信息' ) # 返回成功响应和提示给前端 # 如果是False raise HTTPException(status_code=500, detail='删除失败,该班级信息已不存在或服务器繁忙,请稍后更新!') # 如果为False,抛出 500 内部服务器错误 和提示 \ No newline at end of file diff --git a/dao/class_dao.py b/dao/class_dao.py index 6fed146..4001308 100644 --- a/dao/class_dao.py +++ b/dao/class_dao.py @@ -73,10 +73,10 @@ def get_classes_dao( class_id, class_no , class_name , page , page_size , db ): # ————定义班级表"删除"信息的函数———— def delete_classes_dao( class_id , db ): # 定义函数,设置两个个形参class_id,db try : # 执行以下可能报错的代码 - db.query( Classes ).filter( Classes.id == class_id , Classes.is_deleted == 0 ).update( {"is_deleted": 1} ) # 将未删除且前端输入的id和数据库id可以匹配上的数据更新is_deleted字段为1,表示已逻辑删除 + r = db.query( Classes ).filter( Classes.id == class_id , Classes.is_deleted == 0 ).update( {"is_deleted": 1} ) # 将未删除且前端输入的id和数据库id可以匹配上的数据更新is_deleted字段为1,表示已逻辑删除 + if r !=0: + db.commit() + return r except : # 捕获异常: db.rollback() # 如果中间出错,回滚事务,防止产生脏数据 return False # 返回 False,返回接口,表示操作失败 - else : # 执行成功: - db.commit() # 提交事务:更新is_deleted字段为1,表示已逻辑删除,前端无法查询到已逻辑删除的数据 - return True # 返回 True,返回接口,表示操作成功 diff --git a/models/class_model.py b/models/class_model.py index 23c9bc1..b92eded 100644 --- a/models/class_model.py +++ b/models/class_model.py @@ -5,7 +5,7 @@ from core.database import Base # 从core软件包下的database模块导入B from sqlalchemy.dialects.mysql import TINYINT class Classes( Base ): # 在python里的名字 - __tablename__ = 'class_info_detail' # 在数据库中表的名字 + __tablename__ = 'class_info_detail' # 在数据库中表的名字 #————创建班级"主键"的字段名———— id = Column( Integer # 声明字段的数据类型是"整数" , primary_key = True # 声明是"主键"