from pydantic import BaseModel from datetime import date from typing import Literal class TeacherRequest(BaseModel): #Teacher请求体模型 teacher_id: str teacher_name: str gender: Literal[1,0] birthday: date|None = None native_region_code: str|None = None email: str|None = None phone: str graduation_school: str|None = None class TeacherUpdateRequest(BaseModel): teacher_name: str|None = None gender: Literal[1,0]|None = None birthday: date | None = None native_region_code: str | None = None email: str | None = None phone: str graduation_school: str | None = None class TeacherResponse(BaseModel): #Teacher响应体模型 teacher_id: str teacher_name: str gender: Literal[1,0] birthday: date|None = None native_region_code: str|None = None email: str|None = None phone: str graduation_school: str|None = None class TeacherCourseRequest(BaseModel): #TeacherCourse请求体模型 teacher_id: str|None = None course_id: str|None = None class TeacherCourseResponse(BaseModel): #老师带班信息及课程表响应体模型 teacher_id: str|None = None course_id: str|None = None model_config = {"from_attributes": True} #可以直接读取ORM模型对象,不用手动转字典