Как получить данные формы DJango, которые были добавлены?

Как получить данные всех строк формы, которые были добавлены? У меня есть форма с 5 номерами в строке, и некоторое 'N' количество строк, выбранных пользователем, добавляется.

Форма:

class locker(forms.Form):
    num0 = forms.IntegerField(label='', min_value=1, max_value=25, required=True)
    num1 = forms.IntegerField(label='', min_value=1, max_value=25, required=True)
    num2 = forms.IntegerField(label='', min_value=1, max_value=25, required=True)
    num3 = forms.IntegerField(label='', min_value=1, max_value=25, required=True)
    num4 = forms.IntegerField(label='', min_value=1, max_value=25, required=True)

Вид:

# Render form
...
count = 3
newForm = locker()
context.update({ 'locker': newForm, 'lockerCount': range(count) })
...

Шаблон:

# Display form
...
<div class="lockers">
    <form name="longForm" action="" method="post">
        {% csrf_token %}
        {% for i in lockerCount %}
            {{ locker }}<br />
        {% endfor %}
        <br />
        <input type="submit" value="submit" class="small-button">
    </form>
</div>
...

Я пробовал различные методы, найденные в google, и самое близкое, что я получил, это:

...
data = form.cleaned_data.items()
for q in data:
...

но он получает только последний ряд чисел. Если посмотреть на консоль, то я вижу все данные (ниже). Я пытаюсь получить все строки формы, каждая из которых содержит 5 наборов целых чисел. Пожалуйста, помогите.

[29/Sep/2022 23:19:42] "POST /main/ HTTP/1.1" 200 10113
[29/Sep/2022 23:20:43] "GET /main/?csrfmiddlewaretoken=w3YIsEf1Af2hX4IRfPIVShZCdUjh9EEnbu2o8UGbI8XFbcTif6f1FlviC3KoHDM8&num0=7&num1=6&num2=21&num3=5&num4=11&num0=22&num1=4&num2=6&num3=19&num4=10&num0=9&num1=14&num2=20&num3=3&num4=25 HTTP/1.1" 200 7687

Разобрался. Я неправильно отображал форму. Использование 'formset_factory' для создания набора форм решило эту проблему.

Вид:

# Render form
...
count = 3
lockerSet = formset_factory(locker, extra=count, max_num=10)
context.update({ 'lockerSet': lockerSet })
...

Шаблон:

# Display form
...
<div class="lockers">
    <form name="longForm" action="" method="post">
        {% csrf_token %}
        {{ lockerSet.management_form }}
        {% for form in lockerSet %}
            {{ form }}<br />
        {% endfor %}
        <br />
        <input type="submit" value="submit" class="small-button">
    </form>
</div>
...

Затем я смог получить доступ ко всем данным следующим образом:

lockerSet = formset_factory(locker, extra=count, max_num=10)
formSet = formset(request.POST)
if formSet.is_valid():
    for form in formSet:
      m0 = form.cleaned_data['num0']
      m1 = form.cleaned.data['num1']
      ...
Вернуться на верх