48 lines
1.4 KiB
Python
48 lines
1.4 KiB
Python
# students_schema:请求、响应的模型框架
|
|
|
|
from pydantic import BaseModel , Field , field_validator
|
|
from datetime import datetime
|
|
|
|
# 查询
|
|
class StudentsQuery(BaseModel):
|
|
sid:int | None = None
|
|
student_name:str | None = None
|
|
student_phone: str | None = None
|
|
class_name:str | None = None
|
|
job_open_time:datetime | None = None
|
|
offer_issue_time:datetime | None = None
|
|
company_name:str | None = None
|
|
salary:int | None = None
|
|
|
|
# 新建
|
|
class StudentsResponse(BaseModel):
|
|
student_name:str = Field(...,min_length=1)
|
|
student_phone:str = Field(...,min_length=11,max_length=11)
|
|
class_name:str = Field(...,min_length=1)
|
|
job_open_time:datetime | None = None
|
|
offer_issue_time:datetime | None = None
|
|
company_name:str | None = None
|
|
salary:int | None = None
|
|
|
|
# 更新
|
|
class StudentsUpdate(BaseModel):
|
|
sid:int = Field(...,gt=0)
|
|
student_name:str | None = None
|
|
student_phone: str | None = None
|
|
class_name:str | None = None
|
|
job_open_time:datetime | None = None
|
|
offer_issue_time:datetime | None = None
|
|
company_name:str | None = None
|
|
salary:int | None = None
|
|
|
|
# 删除
|
|
class StudentsDelete(BaseModel):
|
|
sid:int | None = None
|
|
student_name:str | None = None
|
|
student_phone: str | None = None
|
|
class_name:str | None = None
|
|
job_open_time:datetime | None = None
|
|
offer_issue_time:datetime | None = None
|
|
company_name:str | None = None
|
|
salary:int | None = None
|