【发布时间】:2016-05-22 11:15:07
【问题描述】:
我想创建一个模型表单集来同时记录几个表单,以便能够同时回答许多问题。
这仅在我备份例如 3 个问题和 3 个问题时才有效。如果我返回我的页面或者是表单集,我已经保存了预先填写的 3 个字段...
我不明白为什么在我看来我已经保存在我的数据库中的表格...
这是我在我的数据库中保存 2 个字段后得到的...这再次显示了两个字段,然后是 2...我希望它只显示两个空白表单...
我的表格:
class ReplyForm(forms.ModelForm):
class Meta:
model = Reply
fields = ('question','answer','user')
我的意见.py:
def access(request, instance):
replies = Reply.objects.all()
pages = Page.objects.all()
numPages = Page.objects.get(pk=instance)
questions = Question.objects.filter(page=instance)
length_questions = len(questions)
ReplyFormSet = modelformset_factory(model=Reply, form=ReplyForm, extra=length_questions)
logged_user = get_logged_user_from_request(request)
if request.method == 'POST':
formset = ReplyFormSet(request.POST)
if formset.is_valid():
formset.save()
return HttpResponse('Successfully')
else:
return HttpResponseRedirect('/baseVisite/')
else:
formset = ReplyFormSet()
return render_to_response('polls/access.html', {
'formset': formset,
'questions':questions,
'logged_user':logged_user,
'numPages' : numPages
})
忽略instance参数
和我的模板:
<form method="POST" action="">
{{ formset.management_form }} {% csrf_token %}
<table>
{{ formset.as_p }}
</table>
<center><input type="submit" value="Submit" class="btn btn-success" />
</form>
当我备份其他元素时,我该怎么做才能让我看不到数据库中的这些元素?
【问题讨论】:
标签: python django forms django-forms modelform