几天前我已经在 Django 邮件列表上问过这个问题,但不幸的是没有得到答复。所以我又来了:
在 Django 1.2.3 上,我试图让动态表单工作。在第一页上,用户必须提供他们的地址/客户 ID,在第二页上,客户可以订购餐饮服务。
要在第二页上动态添加表单,我使用 http://code.google.com/p/django-dynamic-formset/
这是我的models.py:
class Catering(models.Model):
customer_id = models.CharField(max_length=20)
company = models.CharField(max_length=40)
class DishesForm(forms.Form):
gerecht = fields.CharField(max_length=200)
aantal = fields.IntegerField(required=False)
DishesFormset = formsets.formset_factory(DishesForm)
class TestWizard(FormWizard):
def done(self, request, form_list):
return render_to_response('testwizard', {
'form_data': [form.cleaned_data for form in form_list],
})
网址.py:
(r'^testwizard/$', TestWizard([CateringForm, DishesFormset])),
我遇到的问题是,在模板中我只能用{{form}}
. 为了让javascript正常工作,我需要单独调用这些字段
<td>{{form.gerecht}}
</td>
当我在没有表单向导的情况下单独测试动态表单(DishesFormset)时,一切正常。
如何在表单向导中调用单独的表单域?