№1 Практическая онлайн-школа обучения языкам программирования Python (Django), JavaScript, Kotlin В. Бовсуновского.

Специальная, подарочная акция получения доступа к Django4!

Как, я, начал код писать в Python? Смотрите, если уперлись и ничего не получается.

17. Подробное рассмотрение всех деталей cleaned_data в форме django.

Мы проработали в jupyter все детали работы cleaned_data, теперь мы точно знаем зачем нам это нужно.

Ниже код - это памятка, человеку, который первый раз её видит, она ничего не скажет, так как нужно проработать каждый шаг в jupyter, а вот тем кто проработал, точно понятно для чего и где её использовать. Я выложил лишь для того, что бы было понятно, детали понимать важно. Такие вещи рассматриваются один раз и запоминаются на всегда, даже если мы позабудем, то нам достаточно взглянуть на документацию, как моментально все всплывет в памяти, так как это уже был наш опыт.

-

В этом видео я показал принцип обучения на примере полей форм(у нас так везде).

Крутой способ изучения Django 4 с нуля.

-

cleaned_data - «очистки» полей - нормализации до согласованного формата. Есть несколько тонкостей.

вводить данные для определенного поля в различными способами, всегда приводящими к стабильному результату.

Хранитель полей.

cleaned_data делает:

  • выводит список полей, ключ значение.
{'subject': '77',
 'message': 'Hi, Marina',
 'sender': 'email@mail.ru',
 'cc_myself': False}
  • не выводит поля в которых есть исключения.

как в нашем примере:

{'date_creation': ['Дата отправки должна быть сегодняшним днем, день в день']}
  • умеет опредлять пустое значение поля.
{'date_creation': None,
 ....................
}
  • Хранитель полей, мы можем дописать настройки в наши данные, но cleaned_data выведит только поля, для производства, настройки не выведит. ЭТо залог того, что поля всегда будут выводится верно.
data = {............
        ................
        "extra_field_1": "foo", # это не поле

        }

# в выводе мы не видим эту настройку

{'date_creation': None,
 'subject': '77',
 'message': 'Hi, Marina',
 'sender': 'email@mail.ru',
 'cc_myself': False}
  • Если в поле указано required=False (поле может оставаться не заполненным)
subject = forms.CharField(max_length=100, required=False)

то, cleaned_data включит его в поля, с указанием что значение по умолчанию пустая строка.

{.............
 'subject': '', # значение по умолчанию пустая строка.
 ................
}

Перейти к уроку

18. Продолжим писать функцию с cleaned_data.

Ну что ж после предыдущих двух уроков, нам уже понятно, что и зачем мы пишем.

Давайте продолжим писать функцию с cleaned_data c полным понимаем.

Перейти к уроку

19. Допишем до конца нашу функцию, для формы.

Научимся писать функции для формы и немного познакомимся с библиотекой email. Будем рассуждать логически.

Перейти к уроку

20. Давайте напишем шаблон и попытаемся запустить код.

Никогда не бойтесь исключений, пишите, просто пишите из логики. не просто так, а из логики, все остальное поправится по ходу.

Перейти к уроку