Flask WTF localization with Babel
Messages for validator Required
are set via Required(message=error_message)
, translate them with babel as well. Refer to WTForms documentation for more details.
class LoginForm(Form): username = TextField(gettext(u'Username'), validators=[validators.Required(message='Validation failed for username')]) password = PasswordField('Password', validators=[validators.Required(message='Validation failed for password')])
try with lazy_gettext('')
.
class LoginForm(Form): username = TextField(lazy_gettext(u'Username'), validators=[validators.Required()])
in HTML:
{{form.username.label (class="form-control-label") }}