✨ Feat: [#58] 동적 파일 경로 설정 함수 및 파일 삭제 함수 구현
This commit is contained in:
20
common/utils/fileManager.py
Normal file
20
common/utils/fileManager.py
Normal file
@@ -0,0 +1,20 @@
|
||||
import os
|
||||
|
||||
def dynamic_upload_to(prefix, field_name_func):
|
||||
def wrapper(instance, filename):
|
||||
ext = filename.split('.')[-1]
|
||||
field_name = field_name_func(instance)
|
||||
|
||||
if prefix == 'user':
|
||||
filename = f'{instance.nickname}-{field_name}.{ext}'
|
||||
else:
|
||||
filename = f'{instance.id}-{field_name}.{ext}'
|
||||
|
||||
return os.path.join(prefix, filename)
|
||||
|
||||
return wrapper
|
||||
|
||||
def file_delete(obj, field):
|
||||
getattr(obj, field).delete(save=False)
|
||||
setattr(obj, field, None)
|
||||
obj.save(update_fields=[field])
|
||||
Reference in New Issue
Block a user