首页 > 解决方案 > 在某些情况下 wtform 弹出窗口

问题描述

我希望这个弹出窗口会显示我是否做出了错误的选择(将在后面定义),以及查询长度是否小于 5。 在此处输入图像描述

一些代码内容如下:

class LoginForm(FlaskForm):
    airport_src = SelectField('AirPort Source', choices=AIR_PORTS_LIST, validators=[DataRequired()])
    airport_dst = SelectField('AirPort Destination', choices=AIR_PORTS_LIST, validators=[DataRequired()])
    query = StringField('query', validators=[InputRequired()])
{{ form.csrf_token }}

{{ form.airport_src(placeholder='Make Your Choice') }}
{{ form.airport_dst(placeholder='Make Your Choice') }}
{{ form.query}}

<input type="submit" value="Login">

标签: pythonflask

解决方案


将类中的长度定义为验证器:

class LoginForm(FlaskForm):    
    query = StringField('query', validators=[InputRequired(),Length(min=5, max=40)])

HTML 可以像处理错误一样:

{{ form.query.label }}<br>
{{ form.query(size=120) }}<br>
{% for error in form.query.errors %}
<span style="color: black;">[{{ error }}]</span>
{% endfor %}

推荐阅读