Форум сайта python.su
При обнаружении ошибки после валидации в Django возвращается форма с заполненными до этого значениями полей. Можно ли сделать так, чтобы значение одного из проверенных полей было равно не введенному, а значению по умолчанию? Буду признателен за любой совет по данному вопросу.
Отредактировано vadval15 (Окт. 6, 2022 18:03:04)
Офлайн
простой вариант сделать валидацию стременных полей на JS
Тогда валидация пройдет до отправки формы в бек.
Сложный но возможный
В Джанге вы выполняете валидацию формы и если все ОК - производите действия.
На данное действие можно привязаться - но что бы обработать исключение - вам прийдется знатно убиться головой об стену.
Вариантов тут не много - можно форму разбить на несколько форм. Обрабатывать и клеить заменяя значения.
Это и есть краеугольная беда штанги что как только нужно сделать шаг в лево/право - начинается дичь.
Офлайн
Спасибо за ответ. Видимо, способ возвращения уже заполненного поля к значению по умолчанию в самом Django действительно не предусмотрен, поэтому теперь у меня после повторного появления формы при обнаружении ошибки в ходе валидации с помощью JavaScript анализируется наличие в форме блока с оповещением об ошибке, и в случае положительного результата в соответствующее поле формы заносится значение по умолчанию.
Офлайн