模型表单函数¶
模型表单 API 参考。有关模型表单的介绍性资料,请参阅从模型创建表单主题指南。
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)¶ 为给定的
model
返回一个ModelForm
类。您可以选择传递一个form
参数作为构建ModelForm
的起点。fields
是一个可选的字段名称列表。如果提供,则只会在返回的字段中包含指定的字段。exclude
是一个可选的字段名称列表。如果提供,则即使在fields
参数中列出,指定的字段也会从返回的字段中排除。formfield_callback
是一个可调用对象,它接受一个模型字段并返回一个表单字段。widgets
是一个将模型字段名称映射到小部件的字典。localized_fields
是一个应该本地化的字段名称列表。labels
是一个将模型字段名称映射到标签的字典。help_texts
是一个将模型字段名称映射到帮助文本的字典。error_messages
是一个将模型字段名称映射到错误消息字典的字典。field_classes
是一个将模型字段名称映射到表单字段类的字典。有关示例用法,请参阅ModelForm 工厂函数。
您必须显式提供字段列表,可以通过关键字参数
fields
或exclude
,或者表单内部Meta
类上的相应属性来提供。有关更多信息,请参阅选择要使用的字段。省略对要使用的字段的任何定义将导致ImproperlyConfigured
异常。
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, edit_only=False)¶ 为给定的
model
类返回一个FormSet
类。参数
model
、form
、fields
、exclude
、formfield_callback
、widgets
、localized_fields
、labels
、help_texts
、error_messages
和field_classes
都将传递给modelform_factory()
。参数
formset
、extra
、can_delete
、can_order
、max_num
、validate_max
、min_num
、validate_min
、absolute_max
、can_delete_extra
和renderer
将传递给formset_factory()
。有关详细信息,请参阅表单集。edit_only
参数允许阻止创建新对象。有关示例用法,请参阅模型表单集。
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, edit_only=False)¶ 使用
modelformset_factory()
返回一个InlineFormSet
,默认值为formset=
BaseInlineFormSet
、can_delete=True
和extra=3
。如果您的模型有多个指向
parent_model
的ForeignKey
,则必须指定fk_name
。有关示例用法,请参阅 内联表单集。