Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python WTForms TextArea字段长度验证_Python_Flask_Wtforms - Fatal编程技术网

Python WTForms TextArea字段长度验证

Python WTForms TextArea字段长度验证,python,flask,wtforms,Python,Flask,Wtforms,若输入少于10个字符,则不会显示长度验证消息,而是重定向到主页。当表单字段为空时,如何显示错误消息 表单类: class __MyForm(FlaskForm): name = StringField(FIELDS[0], default="", validators=[DataRequired()]) mail = EmailField(FIELDS[1], default="", validators=[DataRequired()])

若输入少于10个字符,则不会显示长度验证消息,而是重定向到主页。当表单字段为空时,如何显示错误消息

表单类

class __MyForm(FlaskForm):
    name = StringField(FIELDS[0], default="", validators=[DataRequired()])
    mail = EmailField(FIELDS[1], default="", validators=[DataRequired()])
    message = TextAreaField(FIELDS[2], default="", validators=[DataRequired(), Length(min=10, max=250, message="At least 15 characters, maximum 250")])
            <form method="POST">
                {{ form.csrf_token }}
                <div class="row">
                    <div class='form-inputs col-12 col-lg-6'>{{ form.name() }}</div>
                    <div class='form-inputs col-12 col-lg-6'>{{ form.mail() }}</div>           
                     <p class="col-12 col-lg-11">{{ form.message() }}</p>                    
                    <button type="submit" class='btn btn-link col-12 col-lg-1' title="Wyślij">
                        <i class="fas fa-paper-plane fa-4x mb-3"></i>
                    </button>                    
                </div>                    
            </form>
HTML

class __MyForm(FlaskForm):
    name = StringField(FIELDS[0], default="", validators=[DataRequired()])
    mail = EmailField(FIELDS[1], default="", validators=[DataRequired()])
    message = TextAreaField(FIELDS[2], default="", validators=[DataRequired(), Length(min=10, max=250, message="At least 15 characters, maximum 250")])
            <form method="POST">
                {{ form.csrf_token }}
                <div class="row">
                    <div class='form-inputs col-12 col-lg-6'>{{ form.name() }}</div>
                    <div class='form-inputs col-12 col-lg-6'>{{ form.mail() }}</div>           
                     <p class="col-12 col-lg-11">{{ form.message() }}</p>                    
                    <button type="submit" class='btn btn-link col-12 col-lg-1' title="Wyślij">
                        <i class="fas fa-paper-plane fa-4x mb-3"></i>
                    </button>                    
                </div>                    
            </form>

{{form.csrf_token}
{{form.name()}}
{{form.mail()}}

{{form.message()}

我想用我的长度验证消息显示如下错误:

您需要修改html以显示存储在“字段”中的错误。错误并更正查看路径,以便在验证错误时不重定向到主页面


你应该看看:

我不是这个意思。这是一个解决方案,它的默认html表单验证。我必须在js上做: