cleaned_data возвращает неверное / другое значение - PullRequest
0 голосов
/ 03 мая 2020

Я боролся с формами в Django. Можно получить значение из cleaned_data, но оно возвращает совершенно другое число. Например, у меня есть 4 значения на выбор (2,3,4,5). Если я выберу 2, он даст cleaned_data.get (name_of_form_field), возвращает 5. И так далее.

class PopulationForm(forms.Form):
    districts = forms.ModelChoiceField(queryset=Population.objects.order_by('districtid').values_list('districtid',flat=True).distinct())

Для пользователя есть 4 варианта: 2,3,4,5. Если пользователь выбирает 2, он возвращает 5 и так далее. Я не уверен, что происходит. Вот мой views.py:

if request.method == 'POST':
        form = PopulationForm(request.POST)
        if form.is_valid():
            print(form.cleaned_data.get('districts'))
            return HttpResponse(form.cleaned_data.get('districts'))

Вот мой шаблон:

    <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Django Forms Tutorial</title>
</head>
<body>
<h2>Django Forms Tutorial</h2>

<form action="/display/" method="post">
    {% csrf_token %}
    <table>
    {{form.as_table}}

 </table>
<input type="submit" value="Submit" />
</form>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...