ModelChoiceField возвращает число вместо своего значения

У меня есть простая модель для моих файлов csv:

#models.py
class csvModel(models.Model):
    csvFileName = models.CharField(max_length=50)
    csvFile = models.FileField(upload_to='tpData/csv/')

Мой скрипт позволяет пользователю загрузить файл

Затем, я использую ModelChoiceField, который позволяет пользователю выбрать один из загруженных файлов:

#forms.py
class convertForm(forms.Form):
    fileToConvert = forms.ModelChoiceField(queryset=csvModel.objects.all(), label="Choose a CSV file to convert")

При вызове is_valid() я могу получить доступ к значению поля ModelChoiceField (например, если мой csv файл называется test1, я получу test1)

#forms.py
def clean_fileToConvert(self):
    print(self.cleaned_data.get("fileToConvert"))  #I get the name of the field (what I want)

Но когда я пытаюсь получить доступ к этому значению чуть ниже is_valid(), я получаю число (например, 48 для файла, 49 для следующего и т.д.)

#views.py
form2 = convertForm(request.POST)
    if form2.is_valid():
        print(request.POST.get("fileToConvert")) #I get 48

Я даже пытался return self.cleaned_data.get("fileToConvert") в функции clean, но это не работает, я не знаю, как получить доступ к выбранному имени файла, url и т.д.

Вернуться на верх