直接上示例
from bson import ObjectId
class ObjectIdStr(str):
@classmethod
def __get_validators__(cls):
yield cls.validate
@classmethod
def validate(cls, v):
if not isinstance(v, ObjectId):
raise TypeError('ObjectId required')
return str(v)
class Task(TaskBase):
id: ObjectIdStr
state: int
class Config:
orm_mode = True