向ModelForm添加额外的字段

时间:2015-06-10 15:55:53

标签: django forms modelform

我正在为Django ModelForm添加一个额外的字段:

class form(forms.ModelForm):
    extra_field = forms.CharField(label='Name of Institution')
    class Meta:
        model = db_institutionInstitution
        fields = ['conn_kind','time','inst_name2']

表单实际上工作正常,但我不能预先填充它。我在modelformset_factory

中使用它
formset = modelformset_factory(db_institutionInstitution,form=form)

我手动运行查询集并在formset中添加其他表单所需的字典中的条目。但是,当我打电话时:

formset1 = formset(prefix='brch',queryset=qs1)

extra_field未按预期填充(其余工作正常)。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:14)

如果您想设置默认值。

extra_field = forms.CharField(label='Name of Institution', initial="harvard")

如果要动态设置值:

def __init__(self, *args, **kwargs):

    super(form,self).__init(*args, **kwargs)
    self.fields['extra_field'].initial = "harvard"