aiteamutils 0.2.153__py3-none-any.whl → 0.2.155__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.
@@ -69,7 +69,15 @@ class BaseService(Generic[ModelType]):
69
69
  if operation != "delete" and 'extra_data' in entity_data_copy and isinstance(entity_data_copy['extra_data'], dict):
70
70
  logger.info(f"[extra_data 확인] {entity_data_copy['extra_data']}")
71
71
  extra_data = entity_data_copy['extra_data'].copy()
72
- file_fields = {k: v for k, v in extra_data.items() if k.endswith('_files') and v} # 빈 리스트는 제외
72
+ # 파일 필드 체크 로직 수정
73
+ file_fields = {}
74
+ for k, v in extra_data.items():
75
+ if v and isinstance(v, (list, tuple)):
76
+ if k.endswith('_files'):
77
+ file_fields[k] = v
78
+ elif any(isinstance(item, (tuple, list)) and len(item) == 2 and hasattr(item[0], 'read') for item in v):
79
+ file_fields[k] = v
80
+
73
81
  logger.info(f"[파일 필드 확인] {file_fields}")
74
82
  logger.info(f"[파일 필드 타입] {[(k, type(v), type(v[0]) if isinstance(v, list) and v else None) for k, v in file_fields.items()]}")
75
83
 
@@ -83,10 +91,9 @@ class BaseService(Generic[ModelType]):
83
91
 
84
92
  # 파일 필드 분리 및 제거
85
93
  for field_name, files in file_fields.items():
86
- if files: # 이미 위에서 필터링했으므로 조건은 제거 가능
87
- logger.info(f"[파일 처리] 필드: {field_name}, 파일 수: {len(files)}")
88
- separated_files[field_name] = files
89
- del extra_data[field_name]
94
+ logger.info(f"[파일 처리] 필드: {field_name}, 파일 수: {len(files)}")
95
+ separated_files[field_name] = files
96
+ del extra_data[field_name]
90
97
 
91
98
  entity_data_copy['extra_data'] = extra_data
92
99
 
aiteamutils/version.py CHANGED
@@ -1,2 +1,2 @@
1
1
  """버전 정보"""
2
- __version__ = "0.2.153"
2
+ __version__ = "0.2.155"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiteamutils
3
- Version: 0.2.153
3
+ Version: 0.2.155
4
4
  Summary: AI Team Utilities
5
5
  Project-URL: Homepage, https://github.com/yourusername/aiteamutils
6
6
  Project-URL: Issues, https://github.com/yourusername/aiteamutils/issues
@@ -1,7 +1,7 @@
1
1
  aiteamutils/__init__.py,sha256=kRBpRjark0M8ZwFfmKiMFol6CbIILN3WE4f6_P6iIq0,1089
2
2
  aiteamutils/base_model.py,sha256=yBZqzTDF9PA4wCAvmYfG12FdVwLtxOEUCcA3z2i6fXU,4176
3
3
  aiteamutils/base_repository.py,sha256=Oy2zE1i5qx60Xf1tnsaKLyFWapiPqt5JH8NejwNrPWg,4647
4
- aiteamutils/base_service.py,sha256=T0uea00qeeBQmpJjCkizoDFEIyy6FCzbYhxmSF9Y618,22585
4
+ aiteamutils/base_service.py,sha256=Z7QMdU7GxKaTgz10ISMJn3HrvdTMAfdE4pN7js8wUms,22830
5
5
  aiteamutils/cache.py,sha256=07xBGlgAwOTAdY5mnMOQJ5EBxVwe8glVD7DkGEkxCtw,1373
6
6
  aiteamutils/config.py,sha256=YdalpJb70-txhGJAS4aaKglEZAFVWgfzw5BXSWpkUz4,3232
7
7
  aiteamutils/database.py,sha256=msvBKtxWeQVOo0v2Q9i2azuTNtnUItuNNar52gdRZTo,20418
@@ -11,7 +11,7 @@ aiteamutils/files.py,sha256=Qq2w3VAEOzvsDirYtxRTN48LnIzf4TPUH2LftmyYtQk,12831
11
11
  aiteamutils/models.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
12
12
  aiteamutils/security.py,sha256=McUl3t5Z5SyUDVUHymHdDkYyF4YSeg4g9fFMML4W6Kw,11630
13
13
  aiteamutils/validators.py,sha256=_WHN6jqJQzKM5uPTg-Da8U2qqevS84XeKMkCCF4C_lY,9591
14
- aiteamutils/version.py,sha256=P1mqs9Ktv1-K-HXg-VR20P_7V2lyx8pLY3W_eIHv3Ec,43
15
- aiteamutils-0.2.153.dist-info/METADATA,sha256=e5Gkg9U3T3pb3u12N_upva2cTDZDl2zTS0xsx0HMcvk,1743
16
- aiteamutils-0.2.153.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
17
- aiteamutils-0.2.153.dist-info/RECORD,,
14
+ aiteamutils/version.py,sha256=5YwVcSRsRvofCedx2yvO91JVmI0I0jqHNAN9Ak7l39E,43
15
+ aiteamutils-0.2.155.dist-info/METADATA,sha256=qvcjVYSmJvz-3dXCqwhRQsvAiVZ7ph6xDb2HqwRckO0,1743
16
+ aiteamutils-0.2.155.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
17
+ aiteamutils-0.2.155.dist-info/RECORD,,