向ModelForm添加额外的字段

sen*_*rer 15 forms django 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']
Run Code Online (Sandbox Code Playgroud)

表格实际上工作正常,但我不能预先填充它.我用它来modelformset_factory:

formset = modelformset_factory(db_institutionInstitution,form=form)
Run Code Online (Sandbox Code Playgroud)

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

formset1 = formset(prefix='brch',queryset=qs1)
Run Code Online (Sandbox Code Playgroud)

extra_field按预期(其余工作正常)没有预先填充.

有人可以帮忙吗?

pro*_*nte 14

如果要设置默认值.

extra_field = forms.CharField(label='Name of Institution', initial="harvard")
Run Code Online (Sandbox Code Playgroud)

如果要动态设置值:

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

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

  • "默认"应为"初始" (3认同)