feat/enhance the multi-modal support (#8818)
This commit is contained in:
parent
7a1d6fe509
commit
e61752bd3a
267 changed files with 6263 additions and 3523 deletions
17
api/fields/raws.py
Normal file
17
api/fields/raws.py
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
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
|
||||
Loading…
Add table
Add a link
Reference in a new issue