Model Form Functions¶
Model Form API reference. For introductory material about model forms, see the Creating forms from models topic guide.
modelform_factory
¶
-
modelform_factory
(model, form=ModelForm, fields=None, exclude=None, formfield_callback=None, widgets=None, localized_fields=None, labels=None, help_texts=None, error_messages=None, field_classes=None)¶ Returns a
ModelForm
class for the givenmodel
. You can optionally pass aform
argument to use as a starting point for constructing theModelForm
.fields
is an optional list of field names. If provided, only the named fields will be included in the returned fields.exclude
is an optional list of field names. If provided, the named fields will be excluded from the returned fields, even if they are listed in thefields
argument.formfield_callback
is a callable that takes a model field and returns a form field.widgets
is a dictionary of model field names mapped to a widget.localized_fields
is a list of names of fields which should be localized.labels
is a dictionary of model field names mapped to a label.help_texts
is a dictionary of model field names mapped to a help text.error_messages
is a dictionary of model field names mapped to a dictionary of error messages.field_classes
is a dictionary of model field names mapped to a form field class.See ModelForm factory function for example usage.
You must provide the list of fields explicitly, either via keyword arguments
fields
orexclude
, or the corresponding attributes on the form’s innerMeta
class. See Selecting the fields to use for more information. Omitting any definition of the fields to use will result in anImproperlyConfigured
exception.
modelformset_factory
¶
-
modelformset_factory
(model, form=ModelForm, formfield_callback=None, formset=BaseModelFormSet, extra=1, can_delete=False, can_order=False, max_num=None, fields=None, exclude=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None, min_num=None, validate_min=False, field_classes=None, absolute_max=None, can_delete_extra=True, renderer=None)¶ Returns a
FormSet
class for the givenmodel
class.Arguments
model
,form
,fields
,exclude
,formfield_callback
,widgets
,localized_fields
,labels
,help_texts
,error_messages
, andfield_classes
are all passed through tomodelform_factory()
.Arguments
formset
,extra
,can_delete
,can_order
,max_num
,validate_max
,min_num
,validate_min
,absolute_max
,can_delete_extra
, andrenderer
are passed through toformset_factory()
. See formsets for details.See Model formsets for example usage.
Changed in Django 3.2:The
absolute_max
andcan_delete_extra
arguments were added.Changed in Django 4.0:The
renderer
argument was added.
inlineformset_factory
¶
-
inlineformset_factory
(parent_model, model, form=ModelForm, formset=BaseInlineFormSet, fk_name=None, fields=None, exclude=None, extra=3, can_order=False, can_delete=True, max_num=None, formfield_callback=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None, min_num=None, validate_min=False, field_classes=None, absolute_max=None, can_delete_extra=True, renderer=None)¶ Returns an
InlineFormSet
usingmodelformset_factory()
with defaults offormset=
BaseInlineFormSet
,can_delete=True
, andextra=3
.If your model has more than one
ForeignKey
to theparent_model
, you must specify afk_name
.See Inline formsets for example usage.
Changed in Django 3.2:The
absolute_max
andcan_delete_extra
arguments were added.Changed in Django 4.0:The
renderer
argument was added.