У меня есть форма, и структура для всех полей выглядит следующим образом:
<div class="form-group">
{{ form.username.label(class="form-control-label") }}
{% if form.username.errors %}
{{ form.username(class="form-control form-control-lg is-invalid") }}
<div class="invalid-feedback">
{% for error in form.username.errors %}
<span>{{ error }}</span>
{% endfor %}
</div>
{% else %}
{{ form.username(class="form-control form-control-lg") }}
{% endif %}
</div>
Таким образом, я хочу иметь возможность добавить тег class и span, если поле не отправлено. Как мне этого добиться?
Кроме того, вот как я создаю поле:
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField, BooleanField
from wtforms.validators import DataRequired, Length, Email, EqualTo
class RegistrationForm(FlaskForm):
username = StringField('Username', validators=[DataRequired(), Length(min=2, max=20)])
email = StringField('Email', validators=[DataRequired(), Email()])
password = PasswordField('Password', validators=[DataRequired()])
confirm_password = PasswordField('Confirm Password', validators=[DataRequired(), EqualTo('password')])
submit = SubmitField('Sign Up')
Когда я обновляю sh страницу и нажимаю, чтобы отправить форму, не отображается ошибка в консоли, но тег span не добавляется. В основном, мой оператор if в HTML игнорируется.
Как я могу это исправить?