Initial commit: Audio Dashboard Management System
Made-with: Cursor
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
from typing import Optional, Any, List, Union
|
||||
from pydantic import BaseModel, ConfigDict
|
||||
|
||||
|
||||
class PageData(BaseModel):
|
||||
"""分页数据"""
|
||||
model_config = ConfigDict(from_attributes=True)
|
||||
|
||||
items: List[Any]
|
||||
total: int
|
||||
skip: int
|
||||
limit: int
|
||||
|
||||
|
||||
class ApiResponse(BaseModel):
|
||||
"""统一 API 响应格式"""
|
||||
model_config = ConfigDict(from_attributes=True)
|
||||
|
||||
code: int = 0
|
||||
msg: str = "success"
|
||||
data: Optional[Any] = None
|
||||
|
||||
@classmethod
|
||||
def success(cls, data: Any = None, msg: str = "success"):
|
||||
"""成功响应"""
|
||||
return cls(code=1, msg=msg, data=data)
|
||||
|
||||
@classmethod
|
||||
def error(cls, msg: str = "error", code: int = 0):
|
||||
"""错误响应"""
|
||||
return cls(code=code, msg=msg, data=None)
|
||||
|
||||
@classmethod
|
||||
def no_data(cls, msg: str = "no data"):
|
||||
"""无数据响应"""
|
||||
return cls(code=2, msg=msg, data=None)
|
||||
Reference in New Issue
Block a user