Функции форм модели
Справочник по 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) -
Возвращает класс
ModelFormдля заданнойmodel. Вы можете необязательно передать аргумент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) -
Возвращает класс
FormSetдля заданного классаmodel.Аргументы
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(). Подробности см. в formsets.Аргумент
edit_onlyпозволяет запретить создание новых объектов.См. Наборы форм модели для примера использования.
Изменено в Django 4.1:Был добавлен аргумент
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) -
Возвращает набор форм
InlineFormSet, используяmodelformset_factory()со значениями по умолчаниюformset=BaseInlineFormSet,can_delete=True, иextra=3.Если ваша модель имеет более одного
ForeignKeyкparent_model, вы должны указатьfk_name.См. Наборы форм в строке для примера использования.
Изменено в Django 4.1:Был добавлен аргумент
edit_only.
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/4.2/ref/forms/models/