Django 5 для начинающих

Прогресс по курсу:  9/1004

4.1 Формы в Django
5 из 16 шагов пройдено
0 из 48 баллов  получено

Задача 9

Задание:

Напишите класс формы ContactForm, содержащую следующие поля:

  • name: Текстовое поле имени, необходимо добавить метку Имя, текст подсказки Введите ваше имя и измените стандартное сообщение об ошибке, при пустом поле, на Ошибка, не введено имя.
  • email: Поле E-Mail адреса, необходимо добавить метку E-Mail, текст подсказки Введите ваш E-Mail и измените стандартное сообщение об ошибке, при пустом поле, на Ошибка, не введён E-Mail.
  • message: Многострочное текстовое поле сообщения, необходимо добавить метку Сообщение, текст подсказки Введите сообщение и измените стандартное сообщение об ошибке, при пустом поле, на Ошибка, не введено сообщение.
  • promo: Логическое поле подписки на рекламу(флажок), необходимо добавить метку Подписаться на получение новостных и рекламных рассылок? и сделать необязательным к заполнению.


P.S. На экран ничего не нужно выводить.

Чтобы решить это задание откройте https://stepik.org/lesson/1146717/step/16

Напишите программу. Тестируется через stdin → stdout

Верно решили 99 учащихся
Из всех попыток 33% верных
Time Limit: 30 секунд
Memory Limit: 256 MB
Максимум 5 баллов за решение.

Будьте вежливы и соблюдайте наши принципы сообщества. Пожалуйста, не оставляйте решения и подсказки в комментариях, для этого есть отдельный форум.
Оставить комментарий

error_messages для всех тех, кто долго тупит)

@Илья_Восковщук, с подсказкой легко)

Подскажите, в чём ошибка в моём последнем решении...
Не могу разобраться...

@Aleksandr_Yolshin, для решения #1147689022 удалите строки кода name.clean('')email.clean(''), message.clean('') и исправьте значение label = 'E-mail' на 'E-Mail'.

Изменен Дмитрий Селезнев

@Дмитрий_Селезнев, сделано
Вы можете объяснить как работает метод 'clean'?
Я, видать, как-то по-своему это понял...(из Вашего материала)

Изменен Александр Ёлшин

@Aleksandr_Yolshin, там показан пример работы непосредственно с экземпляром класса поля.

f.clean('info@example.com')

При значении 'info@example.com' метод вернёт очищенные данные.

f.clean('Ошибка в написании email адреса')

 При значении 'Ошибка в написании email адреса' метод вызовет исключение ValidationError.

Подскажите в чем ошибка решения https://stepik.org/submissions/4854048/1115041938?unit=1158614

@Евгений_Епишкин, Проверьте правильность оформления кода у error_messages. Там должен быть словарь.

@Илья_Перминов, сработало, спасибо. Правда не смог в теории в лекциях про это найти.

@Евгений_Епишкин, Как же так, вот тут было. Внизу лекции.

Вылазит такое исключение при сдаче задания, что я делаю не так?

@Игорь_Галимов, отсутствует сообщении об ошибке для поля  message.

@Дмитрий_Селезнев, спасибо, видимо, не заметил, что оно требуется