Как разместить поверх нескольких переменных, используя формы в Django - PullRequest
0 голосов
/ 14 июня 2019

Используя HTML-формы, если вы хотите выполнить POST для нескольких переменных, вам нужно будет установить имя поля ввода на «name []», а затем, когда вы выполняете POST ['name'], вы можете получать информацию из каждого ввода поле с именем «имя []». В настоящее время я работаю с Django и реализую представление, которое включает в себя форму, которая будет POST поверх переменного количества переменных. Когда я пытаюсь реализовать тот же метод, который описан выше в Django, вместо этого я получаю «MultiValueDictKeyError». Сняв скобки с имени входных переменных, я больше не получаю сообщение об ошибке, но оно будет POST только для последнего значения, и мне нужно POST для всех значений.

/* In template example.html */
<form action = "{% url view_name %}" method = POST>

/* Variable amount of these inputs */
<input type = "input" name = "name[]">
<input typy = "input" name = "name[]">

<input type = "submit" name = "submit" value = "Submit">
</form>

#View example located in views.py
class view_name(request):
     #Error occurs at below line
     postVar = request.POST["name"]

1 Ответ

1 голос
/ 15 июня 2019

Попробуйте использовать следующее:

postVar = request.POST.getlist('name[]')

Возможно, вам придется удалить [] из входного html.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...