Ошибка формы управления при использовании modelformsets ('данные ManagementForm отсутствует или вмешался'),

У меня есть models.py класс как ниже

class Educational_Qualification(models.Model):
   user = models.ForeignKey(User)
   exam = models.CharField(max_length=40)
   pass_month = models.CharField(max_length=40)

У меня есть views.py как ниже

def create_qualification(request):
 QFormSet = modelformset_factory(Educational_Qualification, extra=3, exclude=("user",))
 if request.method == "POST":
  formset = QFormSet(request.POST, request.FILES)

  if formset.is_valid():
   formset.save()
   for form in formset.forms:
    if form.is_valid():
     quali= form.save(commit=False)
     quali.user = request.user
     quali.save()

    return HttpResponse("Saved")
  else:
   return HttpResponse("Snafu")
 else:
  formset = QFormSet()
 return render_to_response("register/edu.html", {"formset":formset}, context_instance=RequestContext(request)) 

Когда я отправляю форму, она подбрасывает Ошибку проверки. указывание, что данные ManagementForm отсутствуют или вмешались'

У меня есть formset.management_form в моем шаблоне.

Какова могла быть проблема?

6
задан kiamlaluno 10 July 2010 в 19:10
поделиться

1 ответ

Ошибка не в ваших представлениях или моделях, а в шаблонах.

Правильный способ рендеринга формета:

<form method="post" action="">
    <table>
        {{ formset }}
    </table>
</form>

или

<form method="post" action="">
    {{ formset.management_form }}
    <table>
        {% for form in formset.forms %}
            {{ form }}
        {% endfor %}
    </table>
</form>

Я думаю, вы зацикливаетесь на формах в шаблонах, не включая форму управления?

24
ответ дан 8 December 2019 в 04:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: