Я не могу проверить поле файла в своей форме Django

Форма

from django import forms
    
class XLSForm(forms.Form):
    xlsx_file = forms.FileField(help_text="The XLSX file")
    column_1 = forms.ChoiceField(help_text="Column 1 from XLSX")
    column_2 = forms.ChoiceField(help_text="Column 2 from XLSX")
    kaka = forms.CharField(help_text="Column 2 from XLSX")

Вид:

def IndexView(request):

    if request.method == 'POST':
        form = XLSForm(request.POST, request.FILES)
    else:
        form = XLSForm()

    context = {
        'form': form
    }

    return render(request, 'xlsplot.html', context)

И шаблон:

<form method="post" novalidate>
  {% csrf_token %}

  {{form}}

  <button type="submit" class="btn btn-primary">Submit</button>
</form>

Всякий раз, когда я отправляю с файлом, выбранным с компьютера, поле файла сбрасывается на «Файл не выбран» и отображается ошибка. Это поле обязательно для заполнения. Другие входы вроде работают нормально, если они заполнены без ошибок. Я не понимаю.


person trshmanx    schedule 03.08.2020    source источник


Ответы (1)


OK. Я тупой. Я забыл добавить enctype="multipart/form-data" в форму. Дело закрыто!

person trshmanx    schedule 03.08.2020