Form.is_valid() всегда возвращает false возможно проблема с ошибкой "Это поле является обязательным"
Я изучаю django. Я застрял с этой проблемой.
Проблема в том, что form.is_valid() всегда возвращает false.
Я попытался отладить и думаю, что проблема связана с ошибкой "This field is required", и я думаю, что это поле - имя_файла. Я попытался решить проблему, но у меня не получается.
Просто чтобы дать контекст того, что я пытаюсь сделать -
Я создал форму, в которой пользователь загружает текстовый файл и выбирает пол.
В бэкенде я хочу сохранить имя текстового файла вместе с полом в модели. Это необходимо сделать потому, что когда несколько пользователей будут использовать приложение, я должен знать, какой пользователь выбрал тот или иной пол, чтобы я мог получить желаемый результат.
Вот ссылка на мой git-репозиторий -
git repository
Как я уже сказал, я новичок в django и помощь будет оценена по достоинству.
Я думаю, что вы не сохраняете форму. В строке 24 вашего представления у вас
if request.method == 'POST':
form = TranscriptForm(request.POST)
return HttpResponse(str(form.errors))
Если вы отправляете сообщение, вы всегда будете возвращаться туда, поэтому нет проверки is_valid().
То же, что и в строке 60:
context = {'form': TranscriptForm()}
return render(request, 'tutorial/upload.html', context)
вы еще не получили доступ/сохранили форму, чтобы она была действительной
Ваши поля в форме fields = ['file_name','gender'], а в шаблоне у вас
<label for="myfile"> <b> Select a file: </b> </label> <br/>
<input type="file" name="document"> <br/><br/>
<br/><br/>
{{ form.gender }}
... поля document и gender, нет file_name. Добавьте {{ form.file_name }} в шаблон или, если вы хотите придерживаться ручного написания кода для ввода, запишите ввод в файл с именем file_name. Имена ввода должны совпадать с именами полей в форме.
Также прочитайте это: Работа с формами.
В качестве отдельного совета, не относящегося к вопросу, вы опубликовали свои настройки, включая секретные ключи, в публичном репозитории. Позже с производственными ключами это может создать проблему, если вы зафиксируете их в истории версий (особенно публично). https://github.com/AnshulGupta22/auto_generation/blob/main/auto_generation/settings.py