Spec-Zone.ru › Django 5.2

Функции форм модели

Справочник по 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) [source]

Возвращает класс 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) [source]

Возвращает класс 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 позволяет запретить создание новых объектов.

См. Наборы форм модели для примера использования.

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

Возвращает InlineFormSet, используя modelformset_factory() с параметрами по умолчанию formset=BaseInlineFormSet, can_delete=True и extra=3.

Если ваша модель имеет более одного ForeignKey к parent_model, вы должны указать fk_name.

См. Встроенные наборы форм для примера использования.

© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/5.2/ref/forms/models/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API