Files
1/scheme/wl_advisor_scheme.py
T
2026-09-14 13:32:59 +08:00

56 lines
1.9 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 顾问模块:请求和响应格式,写法与原学生模块一致。
# 使用Pydantic定义接口入参、出参模型,用于FastAPI接口的数据校验与序列化
from pydantic import BaseModel
from typing import Optional
# 创建顾问 请求模型:新增顾问时前端提交的数据结构
class AdvisorCreate(BaseModel):
# 顾问姓名(必填字段,创建时必须传入)
adv_name: str
# 顾问性别(选填,不传则为None)
adv_gender: Optional[str] = None
# 顾问联系电话(选填)
adv_phone: Optional[str] = None
# 顾问邮箱(选填)
adv_email: Optional[str] = None
# 顾问所属地区(选填)
adv_region: Optional[str] = None
# 更新顾问 请求模型:修改顾问信息时前端提交的数据结构
# 所有字段全部可选,支持局部更新(只传需要修改的字段)
class AdvisorUpdate(BaseModel):
# 顾问姓名,可选更新
adv_name: Optional[str] = None
# 顾问性别,可选更新
adv_gender: Optional[str] = None
# 顾问电话,可选更新
adv_phone: Optional[str] = None
# 顾问邮箱,可选更新
adv_email: Optional[str] = None
# 顾问地区,可选更新
adv_region: Optional[str] = None
# 顾问信息 响应模型:查询顾问信息,返回给前端的数据结构
class AdvisorOut(BaseModel):
# 顾问主键ID,数据库自增主键
adv_id: int
# 顾问姓名
adv_name: str
# 顾问性别
adv_gender: Optional[str] = None
# 顾问联系电话
adv_phone: Optional[str] = None
# 顾问邮箱
adv_email: Optional[str] = None
# 顾问所属地区
adv_region: Optional[str] = None
class Config:
# from_attributes = True:支持直接把SQLAlchemy ORM对象转为Pydantic模型
# 作用:ORM查询出来的数据库实体,可以直接赋值给AdvisorOut,自动读取属性
from_attributes = True