Django: Не загружаются случайные буквы в одноименном файле [дубликат]

Это мой код, позволяющий пользователю загружать файлы, когда загружается более одного файла с одинаковым условием, по умолчанию к имени файла добавляются случайные буквы, чтобы избежать дублирования, возможно ли вместо этого иметь количество загруженных файлов? Так вместо того, чтобы иметь

?
randomfilename 
randomfilename_jlCtWGb 
randomfilename_aOMtTeb 

иметь это

randomfilename_1 
randomfilename_2 
randomfilename_3

Код:

models.py

def user_directory_path(instance, filename):
    filename = "word_file_%s.%s" % (instance.option, extension)
    return 'word_folder/{0}/{1}'.format(instance.option, filename)

class Document(models.Model): 
    option_choice = [
                    ('1', 'Option One'), 
                    ('2', 'Option Two')
                    ]
    user = models.ForeignKey(UserInformation, on_delete=models.CASCADE)    
    option = models.CharField(max_length=250, choices=option_choice, blank=True, null=True)
    original_filename = models.CharField(max_length=250, blank=True, null=True)
    docfile = models.FileField(upload_to=user_directory_path) 

    def __str__(self):        
        return word_db_' + self.option

views.py

@login_required
def upload_file(request):
    if request.method == 'POST':
        form = DocumentForm(request.POST, request.FILES)
        uploaded_file= request.FILES
        if form.is_valid():   
            form.instance.user = request.user.userinformation    
            form.instance.original_filename = uploaded_file['docfile'].name
            form.save()        
            return redirect('upload_file')
        else:
            message = 'The form is not valid. Fix the following error:'
    else:
        form = DocumentForm()   
   
    context = {
               'form': form,                
               'message': message
               }
    return render(request, 'list.html', context)
Вернуться на верх