fastadmin 0.2.20__py3-none-any.whl → 0.2.22__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
fastadmin/models/base.py CHANGED
@@ -9,7 +9,6 @@ from uuid import UUID
9
9
 
10
10
  from asgiref.sync import sync_to_async
11
11
 
12
- from fastadmin.api.helpers import is_valid_base64
13
12
  from fastadmin.api.schemas import ExportFormat
14
13
  from fastadmin.models.schemas import DashboardWidgetType, ModelFieldWidgetSchema, WidgetType
15
14
 
@@ -456,8 +455,12 @@ class BaseModelAdmin:
456
455
  return None
457
456
 
458
457
  for upload_field in upload_fields:
459
- if upload_field.name in payload and is_valid_base64(payload[upload_field.name]):
460
- await self.orm_save_upload_field(obj, upload_field.column_name, payload[upload_field.name])
458
+ if upload_field.name in payload:
459
+ if inspect.iscoroutinefunction(self.orm_save_upload_field):
460
+ orm_save_upload_field_fn = self.orm_save_upload_field
461
+ else:
462
+ orm_save_upload_field_fn = sync_to_async(self.orm_save_upload_field) # type: ignore [arg-type]
463
+ await orm_save_upload_field_fn(obj, upload_field.column_name, payload[upload_field.name])
461
464
 
462
465
  for m2m_field in m2m_fields:
463
466
  if m2m_field.name in payload: