Как легко извлечь данные request.POST после отправки формы в Django?
Мои данные request.POST после отправки формы Django выглядят следующим образом:
<QueryDict: {'form-0-country': ['19389'], 'form-0-city': ['Montreal'], 'form-0-eid': ['450'], 'form-0-company': ['Nestle'], 'form-0-dept': ['HR'], 'form-1-country': ['19390'], 'form-1-city': ['Toronto'], 'form-1-eid': ['432'], 'form-1-company': ['Nestle'], 'form-1-dept': ['Finance']}>
Это значения двух форм, содержащиеся в двух разных строках на веб-странице. Значения из этих двух строк последовательно печатаются в request.POST. Есть ли способ получить эти данные, выведенные в бэкенде более простым способом, чтобы мне не пришлось в цикле просматривать все эти данные для извлечения определенных полей, содержащихся в них?
Например, что-то вроде этого:
<QueryDict: {'form-0-country': ['19389','19390'], 'form-0-city': ['Montreal','Toronto'], 'form-0-eid': ['450'], 'form-0-company': ['Nestle','Nestle'], 'form-0-dept': ['HR','Finance']>
чтобы я мог легко перебирать значения (списки) в дикте выше.
вместо:
<QueryDict: {'form-0-country': ['19389'], 'form-0-city': ['Montreal'], 'form-0-eid': ['450'], 'form-0-company': ['Nestle'], 'form-0-dept': ['HR'], 'form-1-country': ['19390'], 'form-1-city': ['Toronto'], 'form-1-eid': ['432'], 'form-1-company': ['Nestle'], 'form-1-dept': ['Finance']}>
Вы можете использовать cleaned_data
для извлечения значений из вашей формы.
Например:
country = form.cleaned_data["country"]
city = form.cleaned_data["city"]
Вы должны распечатать форму вместо печати request.POST
e.g.
def your_view(request):
if request.method == 'POST':
form = YourForm(request.POST)
if form.is_valid():
print(form.cleaned_data)
...
...
...