Ошибка валидации не отображается на шаблоне с 2 формами

У меня есть шаблон с формой, в котором данные собираются в 2 Django-формах, но отправляются в представление в одном посте следующим образом:

<form action="" method="post">
        {% csrf_token %}
        <div class="form1">
           <div>
                <label for="field1">field1</label>
                {{ form1.field1 }}
            </div>
            <div>
                <label for="field2">field2</label>
                {{ form1.field2 }}
            </div>
            <div>
                <label for="field3">field3</label>
                {{ form1.field3 }}
            </div>
        </div>
        {{ form2set.management_form }}

        <div id='form2set-form-list'>
            {% for form in form2set %}
            <div class='form2set-form'>
                {{ form.as_p }} 
            </div>
            {% endfor %}
        </div>
            <input type="submit">
        </div>
    </form>

Данные собираются в представлении и проверяются. Для проверки у меня есть валидации, объявленные в обеих формах. В случае если валидация не проходит из-за неправильных данных, она возвращает повышение (в зависимости от того, какая или какие валидации не прошли). Это повышение и должно быть показано на экране пользователю в качестве ошибки.

Если сбой валидации произошел во второй форме, она корректно и без проблем отображает ошибку. Теперь, в случае если сбой произошел в первой форме, страница просто перезагружается и не показывает ошибку. Данные, уже введенные в форму, не теряются и могут быть исправлены, но ошибка не отображается.

Мое мнение примерно такое:

def create(request):
    form1 = Form1(request.POST or None)
    form2 = formset_factory(Form2, extra=0)
    form2Set = form2(request.POST or None, prefix='participant')
    
    context = {
        'form1': form1,
        'form2Set': form2Set,
    }

    if request.method == 'POST':
        if form1.is_valid() and form2Set.is_valid():
            # Logic
        else:
            context['form1'] = form1
            context['form2Set'] = form2Set

    return render(request, 'template', context)
Вернуться на верх