""" 通用响应模型 """ from typing import Generic, TypeVar, List, Optional from pydantic import BaseModel, Field T = TypeVar("T") class DeleteResponse(BaseModel): """删除成功响应""" success: bool = Field(default=True, description="操作是否成功") message: str = Field(description="响应消息") class Config: json_schema_extra = { "example": { "success": True, "message": "删除成功" } } class PaginatedResponse(BaseModel, Generic[T]): """分页列表响应""" items: List[T] = Field(description="数据列表") total: int = Field(description="总记录数") skip: int = Field(description="跳过的记录数") limit: int = Field(description="返回的记录数") class Config: json_schema_extra = { "example": { "items": [], "total": 0, "skip": 0, "limit": 20 } }