Feat: [#58] 동적 파일 경로 설정 함수 및 파일 삭제 함수 구현

This commit is contained in:
sm4640
2025-05-20 00:02:19 +09:00
parent 54e04e1c94
commit d4926be0d5

View 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])