누군가가 올바른 방향으로 나를 가리킬 수 있기를 바랍니다.Django FileSystemStorage get_available_name 반환 이름 및 개수
기본 Django FileSystemStorage 함수 인 get_available_name은 해당 FileField의 db에 저장되는 이름 만 반환합니다. 이 같은
원래 get_available 이름의 모양을
def get_available_name(self, name):
dir_name, file_name = os.path.split(name)
file_root, file_ext = os.path.splitext(file_name)
count = itertools.count(1)
while self.exists(name):
name = os.path.join(dir_name, "%s_%s%s" % (file_root, count.next(), file_ext))
return name
어떻게 가능성도 계산 반환 할 수 있습니다. 내가 (name, count)와 같은 튜플을 반환하려고 시도하고 get_available_name 이후에 실행되는 해당 저장 메소드를 수정하려고했지만 카운트를 잡는 데 성공하지 못했습니다.
class DataFile(models.Model):
title=models.CharField(max_length=255, unique=False, blank=False)
file=models.FileField(max_length=255, blank=False, storage=fs, upload_to=get_path)
뷰 :
def save_uploaded_datafile(request):
### get request.FILES and save it
f=DataFile()
f.file=request.FILES['DataFile']
f.title=f.file.name
f.save()
이 어떻게 가능한 추가 처리를 위해보기에 저장할 수 get_available_name에서 수를 반환 할 수를 배경은 내가이 같은 관점에서 저장 파일 클래스를 가지고 있는지? 도움을 주신 분께 감사드립니다. Thx!
추신 : 게시 된 코드는 실행되지 않습니다. 의사 코드와 비슷하지만 아이디어를 얻길 바랍니다.
왜 그 이름을 쪼개고 카운트를 얻지 못합니까? – catherine
맞나요? 나는 그것에 대해 생각해 보았습니다. 왜 여기에 "힘겨운 길"을 취하고 있는지 알지 못합니다 ... – Jingo