from pydantic import BaseModel from typing import Optional # 数据模型基类: UserapiCacheBase,用于描述基础字段的类型、用途和注意点 class UserapiCacheBase(BaseModel): key: str # 对应数据库中的key字段 content: str # 对应数据库中的content字段 lastupdate: int # 对应数据库中的lastupdate字段 class UserapiCacheCreate(UserapiCacheBase): """ 用于创建新的ims_userapi_cache记录: - 继承自UserapiCacheBase,不额外添加字段 - 仅表示此Schema专用于'创建'场景 """ pass class UserapiCacheUpdate(BaseModel): """ 用于更新已有ims_userapi_cache记录: - 只包含可选字段,未在此处的内容将保持不变 - 注意: exclude_unset=True 可以避免更新空值 """ key: Optional[str] content: Optional[str] class UserapiCache(UserapiCacheBase): """ 表示完整的ims_userapi_cache记录: - id: 数据库主键ID - 包含所有字段的最终模型,ORM转换时使用 """ acid: int # 表中的主键ID class Config: from_attributes = True # 数据模型基类: UserapiReplyBase,用于描述基础字段的类型、用途和注意点 class UserapiReplyBase(BaseModel): rid: int description: str apiurl: str token: str default_text: str cachetime: int class UserapiReplyCreate(UserapiReplyBase): """ 用于创建新的ims_userapi_reply记录: - 继承自UserapiReplyBase,不额外添加字段 - 仅表示此Schema专用于'创建'场景 """ pass class UserapiReplyUpdate(BaseModel): """ 用于更新已有ims_userapi_reply记录: - 只包含可选字段,未在此处的内容将保持不变 - 注意: exclude_unset=True 可以避免更新空值 """ rid: Optional[int] description: Optional[str] apiurl: Optional[str] token: Optional[str] default_text: Optional[str] cachetime: Optional[int] class UserapiReply(UserapiReplyBase): """ 表示完整的ims_userapi_reply记录: - id: 数据库主键ID - 包含所有字段的最终模型,ORM转换时使用 """ adid: int # 表中的主键ID class Config: from_attributes = True