Начиная с WTForms 2.2 , атрибут HTML required
отображается, когда поле имеет валидатор, который устанавливает флаг «обязательно» .Это позволяет клиенту выполнять некоторые базовые проверки, сохраняя возможность обращения к серверу в обоих направлениях.
Вы должны оставить это браузеру для обработки этого.Сообщения являются стандартными и корректируются в зависимости от локали компьютера пользователя.Существует JavaScript API для управления этими сообщениями (см. Переполнение стека и MDN ), хотя WTForms не обеспечивает никакой интеграции с ним (пока хорошая идея для расширения).
Если вы действительно хотите отключить это, вы можете передать required=False
при рендеринге поля.
{{ form.name(required=False) }}
Вместо этого вы можете отключить его для всей формы,переопределение Meta.render_field
.
class NoRequiredForm(Form):
class Meta:
def render_field(self, field, render_kw):
render_kw.setdefault('required', False)
return super().render_field(field, render_kw)
Вы можете отключить его для нескольких форм, унаследовав от базовой формы, которая его отключает.
class UserForm(NoRequiredForm):
...
Вы также можете отключить проверку клиента без значительного изменениякод, установив атрибут novalidate
в теге HTML form
.
<form novalidate>
</form>
См. обсуждение запроса на добавление, добавив это поведение.