Severian's picture
initial commit
a8b3f00
raw
history blame contribute delete
502 Bytes
from flask_restful import fields
from core.file import File
class FilesContainedField(fields.Raw):
def format(self, value):
return self._format_file_object(value)
def _format_file_object(self, v):
if isinstance(v, File):
return v.model_dump()
if isinstance(v, dict):
return {k: self._format_file_object(vv) for k, vv in v.items()}
if isinstance(v, list):
return [self._format_file_object(vv) for vv in v]
return v