修改样式,接口
This commit is contained in:
@@ -1,16 +1,17 @@
|
||||
from typing import Any, Optional
|
||||
from typing import Generic, TypeVar, Optional
|
||||
|
||||
from pydantic import BaseModel
|
||||
from pydantic.generics import GenericModel
|
||||
|
||||
class CommonResponse(BaseModel):
|
||||
code: int = 0
|
||||
message: str = "success"
|
||||
data: Any = None
|
||||
error: Optional[Any] = None
|
||||
T = TypeVar("T")
|
||||
|
||||
class Response(BaseModel, Generic[T]):
|
||||
code: int
|
||||
message: str
|
||||
data: Optional[T] = None # ✅ 明确 data 可为 None
|
||||
|
||||
def resp_success(data=None, message="success"):
|
||||
return CommonResponse(code=0, message=message, data=data, error=None)
|
||||
def resp_success(data: T, message: str = "success") -> Response[T]:
|
||||
return Response(code=0, message=message, data=data)
|
||||
|
||||
|
||||
def resp_error(message="error", code=1, error=None):
|
||||
return CommonResponse(code=code, message=message, data=None, error=error)
|
||||
def resp_error(message="error", code=1) -> Response[None]:
|
||||
return Response(code=code, message=message, data=None)
|
||||
Reference in New Issue
Block a user