Model Form Functions

模型表单API参考。 有关模型表单的介绍材料,请参阅Creating forms from models主题指南。

modelform_factory

modelform_factorymodelform = ModelFormfields = Noneexclude = Noneformfield_callback = Nonewidgets = Nonelocalized_fields = Nonelabels = Nonehelp_texts =无error_messages =无field_classes =无[source]

返回给定modelModelForm类。 您可以选择传递form参数,以作为构建ModelForm的起点。

fields是字段名称的可选列表。 如果提供,只有命名字段将包含在返回的字段中。

exclude是字段名称的可选列表。 如果提供,则将从返回的字段中排除指定的字段,即使它们在fields参数中列出。

formfield_callback是一个可调用,它接受一个模型字段并返回一个表单字段。

widgets是映射到窗口小部件的模型字段名称的字典。

localized_fields是应该本地化的字段名称的列表。

labels是映射到标签的模型字段名称的字典。

help_texts是映射到帮助文本的模型字段名称的字典。

error_messages是映射到错误消息字典的模型字段名称的字典。

field_classes是映射到表单字段类的模型字段名称的字典。

有关示例用法,请参见ModelForm factory function

您必须通过关键字参数Metaexclude或表单内部fields类别上的相应属性显式提供字段列表。 有关详细信息,请参见Selecting the fields to use 省略要使用的字段的任何定义将导致ImproperlyConfigured异常。

modelformset_factory

modelformset_factorymodelform = ModelFormformfield_callback = Noneformset = BaseModelFormSetextra = 1can_delete = Falsecan_order = Falsemax_num = Nonefields =无exclude = Nonewidgets = Nonevalidate_max = Falselocalized_fields = None labels = Nonehelp_texts = Noneerror_messages = Nonemin_num = Nonevalidate_min = False field_classes = None[source]

为给定的FormSet类返回model类。

Arguments model, form, fields, exclude, formfield_callback, widgets, localized_fields, labels, help_texts, error_messages, and field_classes are all passed through to modelform_factory().

参数can_deletevalidate_maxmax_numextraformsetcan_order传递到formset_factory() 有关详细信息,请参阅formsets

有关示例用法,请参见Model formsets

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)[source]

Returns an InlineFormSet using modelformset_factory() with defaults of formset=BaseInlineFormSet, can_delete=True, and extra=3.

如果您的模型有多个ForeignKeyparent_model,则必须指定fk_name

有关示例用法,请参见Inline formsets