2

我有 Django 模型,其中包含许多用户必须填写的字段。如果我要为这个模型创建一个 ModelForm,它对于一个表单来说就足够大了。我想使用 FormWizard 拆分它。我认为可以首先动态创建表单,然后使用它们创建 FormWizard。

这是好方法还是有更好的方法?

4

1 回答 1

2

对我来说这似乎很好。

创建部分表单的方法写在文档中。

简而言之:

class PartialAuthorForm(ModelForm):
    class Meta:
        model = Author
        fields = ('name', 'title')

class PartialAuthorForm(ModelForm):
    class Meta:
        model = Author
        exclude = ('birth_date',)

这样做的动态方式是:

def gimme_my_form(field_tuple):
    class MyForm(ModelForm):
        class Meta:
            model = MyModel
            fields = field_tuple
    return MyForm

最终,您也可以通过这种方式对模型进行参数化。

于 2009-11-08T20:46:48.053 回答