from pydantic import BaseModel from datetime import date from typing import Optional, List # ----------------学生---------------- class StudentCreate(BaseModel): stu_name: str native_place: Optional[str] = None graduate_school: Optional[str] = None major: Optional[str] = None in_time: Optional[date] = None out_time: Optional[date] = None edu: Optional[str] = None advisor_id: Optional[int] = None stu_age: Optional[int] = None stu_gender: Optional[str] = None class StudentResp(StudentCreate): stu_id: int class Config: from_attributes = True # ----------------成绩---------------- class ScoreCreate(BaseModel): stu_id: int exam_order: int score: float class ScoreResp(ScoreCreate): class Config: from_attributes = True # ----------------班级---------------- class ClassCreate(BaseModel): start_time: Optional[date] = None class ClassResp(ClassCreate): class_id: int class Config: from_attributes = True # ----------------老师---------------- class TeacherCreate(BaseModel): t_name: str t_gender: Optional[str] = None t_email: Optional[str] = None class_id: Optional[int] = None role: Optional[str] = None class TeacherResp(TeacherCreate): t_id: int class Config: from_attributes = True