Django: пользовательская система хранения с инкрементальным числом
Я пытаюсь создать пользовательскую файловую систему хранения в python, чтобы дубликаты файлов, которые загружаются, отличались числом, которое увеличивается. Код вроде как работает, моя единственная проблема в том, что вместо этого я получаю такие результаты:
nameofthefile_1.txt
nameofthefile_2.txt
nameofthefile_3.txt
Я получаю это
nameofthefile_1.txt
nameofthefile_1_2.txt
nameofthefile_1_2_2.txt
Это мой код
class CustomStorage(FileSystemStorage):
def get_available_name(self, filename, max_length=None):
number_1 = filename.split('_')[19]
plus_one = int(number_1.split('.')[0])
if self.exists(filename):
plus_one += 1
dir_name, file_name = os.path.split(filename)
file_root, file_ext = os.path.splitext(file_name)
filename = os.path.join(dir_name, '{}_{}{}'.format(file_root, plus_one, file_ext))
return filename
def user_directory_path(instance, filename):
extension = filename.split('.')[-1]
filename = "file_%s_1.%s" % (instance.identification, extension)
return 'folder/{0}/{1}'.format(instance.user, filename)