encoder.py 488 B

12345678910111213141516171819202122
  1. from typing import List
  2. from pydantic import BaseModel
  3. def serialize_base_model_array(l: List[BaseModel]) -> str:
  4. class _BaseModel(BaseModel):
  5. __root__: List[BaseModel]
  6. """
  7. {"__root__": [BaseModel, BaseModel, ...]}
  8. """
  9. return _BaseModel(__root__=l).json()
  10. def serialize_base_model_dict(b: dict) -> str:
  11. class _BaseModel(BaseModel):
  12. __root__: dict
  13. """
  14. {"__root__": {BaseModel}}
  15. """
  16. return _BaseModel(__root__=b).json()