From 9ecc048e2b8acaad90ea2453770466976819e2bc Mon Sep 17 00:00:00 2001 From: test1 Date: Mon, 21 Sep 2026 11:10:38 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=EF=BC=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PythonProject/dao/teacher_dao.py | 65 +++++++++++++------------- PythonProject/schema/teacher_schema.py | 23 +++++++++ 2 files changed, 55 insertions(+), 33 deletions(-) diff --git a/PythonProject/dao/teacher_dao.py b/PythonProject/dao/teacher_dao.py index e167582..c02a3f7 100644 --- a/PythonProject/dao/teacher_dao.py +++ b/PythonProject/dao/teacher_dao.py @@ -1,39 +1,38 @@ from fastapi import HTTPException,Depends -from util.database import get_db -from model.student_model import Student_Model -def add_teacher(): +from PythonProject.model.teacher_model import Teacher_Model +from util.database import * +from schema.teacher_schema import Teacher_RequestModel - - - - - - - - 实现增加老师的功能 ** xxx - 做成中 ** - 实现查询老师的功能 ** xxx - 做成中 ** - 实现更新老师的功能 ** xxx - 做成中 ** - 实现删除老师的功能 ** xxx - 做成中 ** -def select_age(min_age,max_age,session=Depends(get_db)): +def add_teacher(req:Teacher_RequestModel,session=Depends(get_db)): try: - if min_age is None and max_age is None: - raise HTTPException(status_code=400, detail="请至少传入一个参数") - session = session.query(Student_Model) - if min_age is not None: - session = session.filter(Student_Model.age >= min_age) - if max_age is not None: - session = session.filter(Student_Model.age <= max_age) - return session.all() - except HTTPException: - raise - except Exception: - raise HTTPException(status_code=500,detail="查询异常") + data=req.model_dump() + session.add(Teacher_Model(**data)) + session.commit() + except: + raise HTTPException(status_code=500,detail="添加异常!") + return req.model_dump() -def abc(): - return None +def select_teacher(session=Depends(get_db)): + try: + teacher_list=session.query(Teacher_Model).all() + return teacher_list + except: + raise HTTPException(status_code=500,detail="查询异常!") + +def update_teacher(id:int,req:Teacher_RequestModel,session=Depends(get_db)): + try: + session.query(Teacher_Model).filter(Teacher_Model.teac_id==id)\ + .update(req.model_dump(exclude_unset=True)) + session.commit() + except: + raise HTTPException(status_code=500,detail="更新异常!") + +def delete_teacher(id:int,session=Depends(get_db)): + try: + session.query(Teacher_Model).filter(Teacher_Model.teac_id==id).delete() + session.commit() + except: + raise HTTPException(status_code=500,detail="删除异常") + return {'code':200,'details':'删除成功'} \ No newline at end of file diff --git a/PythonProject/schema/teacher_schema.py b/PythonProject/schema/teacher_schema.py index e69de29..221bd85 100644 --- a/PythonProject/schema/teacher_schema.py +++ b/PythonProject/schema/teacher_schema.py @@ -0,0 +1,23 @@ +from datetime import date + +from pydantic.v1 import BaseModel +from datetime import datetime + +class Teacher_RequestModel(BaseModel): + teac_id: int + teac_name:str + teac_gender:str + teac_age:int + teac_position:str + status=int + create_date:datetime + update_date:datetime + + + + + + + + +