Найти тему
СОФТБИТ

Сжатая шпаргалка по работе с формами в Django

Оглавление

forms.py

views.py

-2

index.html

-3

Список типов полей:

-4

За генерацию отвечает forms.widgets. Список дополнительных виджетов:

PasswordInput - генерирует поле для ввода пароля

HiddenInput - генерирует скрытое поле

MultipleHiddenInput - генерирует набор скрытых полей

TextArea - генерирует многострочное текстовое поле

RadioSelect - генерирует список переключателей (радиокнопок)

CheckboxSelectMultiple - генерирует список флажков

TimeInput-генерирует поле для ввода времени (например, 12:41 или 12:41:32)

SelectDateWidge - генерирует три поля select для выбора дня, месяца и года

SplitHiddenDateTimeWidget - использует скрытое поле для хранения даты и времени

FileInput- генерирует поле для выбора файла

Каждый экземпляр класса Field имеет метод clean(), который принимает единственный аргумент и вызывает исключение django.forms.ValidationError в случае ошибки или возвращает чистое значение: Field.clean(value)

Дополнительные аргументы:

  • required - указывает на необходимость обязательного заполнения поля (по умолчанию: required=True). Для того чтобы сделать поле необязательным для заполнения, нужно указать: required=False;
  • label - позволяет определить видимую пользователем метку для поля (например, если имя поля name и на экране нужно показать Ваше имя, то это можно сделать следующим образом: name = forms.CharField(label='ваше имя' ) ;
  • label_suffix - позволяет переопределить атрибут формы label_suffix для каждого поля. Например:
-5
  • initial - позволяет определять начальное значение для поля при его отображении на незаполненной форме. Например:
-6
  • widget - позволяет указать класс Widget, который следует использовать при отображении поля вместо того, который задан по умолчанию
-7
  • help_text - позволяет указать описание данных, которые нужно внести в поле. Если вы укажете help_text, он будет показан около поля при отображении формы с помощью вспомогательных методов. Например:
-8
  • error_messages - позволяет изменить стандартные сообщения об ошибках, которые выдает поле.
-9
  • validators - позволяет указать список функций, осуществляющих проверку поля
  • localize - включает локализацию для данных формы как на входе, так и на выходе
  • disabled - этот аргумент принимает булево значение. При значении true - выключает поля формы, используя HTML-атрибут disabled. Даже если пользователь отправит данные этого поля, они будут проигнорированы и использовано значение из начальных данных, которые были переданы в форму.
  • empty_value - значение по умолчанию в поле textInput. Заранее ведённый текст.
  • max_length и min_length - максимально и минимальное символов для CharField
  • max_value и min_value - максимальное и минимальное значение для forms.IntegerField()
  • field_order = ["age", "name"] - переопределение порядка вывода формы
  • attrs={"class": "myfield"} - присвоение конкретных атрибутов полю

Вид формы:

as_table( ) - отображение полей в виде таблицы;

as_ul( ) - отображение полей в виде списка;

as_p( ) - отображение каждого поля формы в отдельном параграфе (абзацев).

Детальная настройка полей формы:

  • form.название_поля.name - возвращает название поля
  • form.название_поля.value - возвращает значение поля, которое ему было передано по умолчанию
  • form.название_поля.label - возвращает текст метки, которая генерируется рядом с полем
  • form.название_поля.id_for_label - возвращает id для поля, которое по умолчанию создается по схеме id _имя_ поля;
  • form.название_поля.auto_id - возвращает id для поля, которое по умолчанию создается по схеме id _имя_ поля;
  • form.название_поля.label_tag- возвращает элемент label, который представляет метку рядом с полем;
  • form.название_поля.help_text - возвращает текст подсказки, ассоциированной с полем;
  • form.название_поля.errors - возвращает ошибки валидации, связанные с полем;
  • form.название_ поля.css_classes - возвращает CSS-классы поля;
  • form.название_поля.as_hidden - генерирует для поля разметку в виде скрытого поля;
  • form.название_поля.is_hidden - возвращает True или False в зависимости от того, является ли поле скрытым;
  • form.название_поля.аs_text - генерирует для поля разметку в виде текстового поля;
  • form.название_поля.аs_textarea - генерирует для поля разметку в виде textarea;
  • form.название_поля.as_widget - возвращает виджет Django, который ассоциирован с полем
-10
-11

Наука
7 млн интересуются