模型表單函式¶
模型表單 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
是一個模型欄位名稱對應到 widget 的字典。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()
並預設formset=
BaseInlineFormSet
、can_delete=True
和extra=3
,回傳一個InlineFormSet
。如果您的模型有多個指向
parent_model
的ForeignKey
,您必須指定一個fk_name
。有關範例用法,請參閱內嵌表單集合。