我创建的表单的错误消息没有以我放置的引导样式出现。 这是form.py代码:
class SearchForm(FlaskForm):
search = StringField('Número do protocolo', validators=[DataRequired()])
submit = SubmitField('Buscar')
这是.html代码:
{% extends "base.html" %}
{% block sub_content %}
<br><br>
<form method="POST" action="">
{{ form.hidden_tag() }}
<fieldset class="form-group">
<legend class="border-bottom mb-4">Veja o andamento da sua denúncia</legend>
<div class="form-group">
{{ form.search.label(class="form-control-label") }}
{% if form.search.errors %}
{{ form.search(class="form-control is-invalid") }}
<div class="invalid-feedback">
{% for error in form.search.errors %}
<span>{{ error }}</span>
{% endfor %}
</div>
{% else %}
{{ form.search(class="form-control") }}
{% endif %}
</div>
</fieldset>
<div class="form-group">
{{ form.submit(class="btn btn-secondary") }}
<a href="/client1/"><input type="button" value="Voltar" class="btn btn-secondary"></a>
</div>
</form>
{% endblock %}
即使html代码具有如下所示的错误样式:
{% if form.search.errors %}
{{ form.search(class="form-control is-invalid") }}
<div class="invalid-feedback">
{% for error in form.search.errors %}
<span>{{ error }}</span>
{% endfor %}
</div>
{% else %}
它在下图中不断显示随机错误消息:
答案 0 :(得分:0)
解决方案非常简单,您只需向表单添加“ novalidate”标签。您的代码没有错。
这是因为浏览器正在响应瓶状表单之前就做出了响应,并且实际上未呈现任何“错误”。
因此,HTML表单如下所示:
<!-- Note the 'validate' tag -->
<form method="POST" action="" novalidate>
{{ form.hidden_tag() }}
<fieldset class="form-group">
<legend class="border-bottom mb-4">Veja o andamento da sua denúncia</legend>
<div class="form-group">
{{ form.search.label(class="form-control-label") }}
{% if form.search.errors %}
{{ form.search(class="form-control is-invalid") }}
<div class="invalid-feedback">
{% for error in form.search.errors %}
<span>{{ error }}</span>
{% endfor %}
</div>
{% else %}
{{ form.search(class="form-control") }}
{% endif %}
</div>
</fieldset>
<div class="form-group">
{{ form.submit(class="btn btn-secondary") }}
<a href="/client1/"><input type="button" value="Voltar" class="btn btn-secondary"></a>
</div>
</form>
否验证标签----> w3school
指南 -----> Miguel Grinberg