写好了增加学生接口,增加学生dao层,main里加入了student——router

This commit is contained in:
wolin_liyujie
2026-09-21 12:36:57 +08:00
parent 9692c0867d
commit 546bc68847
4 changed files with 50 additions and 1 deletions
+14
View File
@@ -0,0 +1,14 @@
from fastapi import APIRouter,Depends,HTTPException
from sqlalchemy.orm import Session
from dao.student import *
from schemas.student import StudentCreate
student_router = APIRouter()
@student_router.post("/student")
def create_student(request:StudentCreate,db:Session,create = Depends(create_students)):
d = request.model_dump()
r = create_students(d,db)
if not r:
raise HTTPException(status_code=500,detail='服务器繁忙,请稍后添加!')
return {'code':200,'detail':"添加学生成功"}
+16
View File
@@ -0,0 +1,16 @@
from schemas.student import *
from core.database import get_db
from models.student import *
from utils.code_generator import generate_no
def create_students(d,db):
stu = Student(**d)
try:
db.add(stu)
generate_no("student_no", "STU", stu, db)
db.commit()
except:return False
else:
return True
+2 -1
View File
@@ -2,13 +2,14 @@ from fastapi import FastAPI
from api.example import example_router
from middleware import log_middleware
import uvicorn
from api.student import student_router
app = FastAPI()
app.middleware("http")(log_middleware)
#-------------朱婷婷--------------
#-------------李玉杰--------------
app.include_router(student_router)
#-------------张义---------------
#-------------薄鑫---------------
+18
View File
@@ -0,0 +1,18 @@
from pydantic import BaseModel
from datetime import date
class StudentCreate(BaseModel):
student_no: str|None = None
student_name: str
class_id: int
consultant_id: int | None = None
native_place: str | None = None
graduate_school: str | None = None
major: str | None = None
enrollment_date: date
graduation_date: date | None = None
education: str | None = None
age: int
gender: str