Django 表单集&x2B;表单,压缩到一个表单集

Django 表单集&x2B;表单,压缩到一个表单集,django,django-forms,Django,Django Forms,假设我想要一个5个人同时注册一项服务的系统,所有人都在同一天开始注册 显式:5个名称字段(通过extra=5传递)和一个日期字段 我尝试了BaseFormSet和add_字段,但是我也得到了五个日期字段 示例forms.py: class NameForm(forms.Form): name = forms.CharField() class DateForm(form.Form): date = forms.DateField() 一个示例views.py: NameFor

假设我想要一个5个人同时注册一项服务的系统,所有人都在同一天开始注册

显式:5个名称字段(通过extra=5传递)和一个日期字段

我尝试了BaseFormSet和add_字段,但是我也得到了五个日期字段

示例forms.py:

class NameForm(forms.Form):
    name = forms.CharField()

class DateForm(form.Form):
    date = forms.DateField()
一个示例views.py:

NameFormSet = formset_factory(NameForm, extra=5)
#The line under will not work, but illustrates what I want to do. 
NameFormSet.append(DateForm)
if request.method = 'POST':
    formset = NameFormSet(request.POST)
    #Do validation etc.. 
else:
    formset = NameFormSet()
return render_to_response('template.html', { 'formset' : formset })

请帮助=)

你能不能再加一个这样的日期表

NameFormSet = formset_factory(NameForm, extra=5)

if request.method = 'POST':
    formset = NameFormSet(request.POST)
    date_form = DateForm(request.POST)

    if formset.is_valid() and date_Form.is_valid():
        date = date_form.cleaned_data['date']
        for form in formset:
            name = form.cleaned_data['name']
            # replace registration with registration model name
            registration = Registration(name=name, date=date)
            registration.save()
        return
else:
    formset = NameFormSet()
    date_form = DateForm()
return render_to_response('template.html', { 'formset' : formset, 'date_form' : date_form })