【发布时间】:2020-06-17 18:58:55
【问题描述】:
这是我的代码:
# My Form
from flask_wtf import FlaskForm
from wtforms.validators import Length, InputRequired
from wtforms import StringField, SubmitField
class AddGradeForm(FlaskForm):
name = StringField('Grade', validators=[InputRequired(), Length(min=4, max=20)])
submit = SubmitField('Add')
# My route
@admin.route('/AddGrade', methods=['GET', 'POST']) # admin is my blueprint's name
def add_grade():
form = AddGradeForm()
if form.is_submitted():
return str(form.validate_on_submit()) # always returns False
...
flash('New grade has been added', 'success')
return redirect(url_for('grades'))
return render_template('add_grade.html', form=form)
# Template
<form method="POST" action="">
{{ form.hidden_tag() }}
<!-- Second row -->
<div class="row">
<div class="col-12">
<div class="form-group">
{{ form.name.label(class="form-control-label") }}
{% if form.name.errors %}
{{ form.name(class="form-control is-invalid") }}
<div class="invalid-feedback">
{% for error in form.name.errors %}
<span>{{ error }}</span>
{% endfor %}
</div>
{% else %}
{{ form.name(class="form-control") }}
{% endif %}
</div>
</div>
</div>
<div class="input-group mb-35 " style="vertical-align: middle;">
{{ form.submit(class="btn btn-outline-primary btn-block") }}
</div>
</form>
在我的本地服务器上 validate_on_submit() 完全按照我的预期工作,但在生产服务器上,validation_on_submit 函数总是返回 False(再次重定向到表单而没有验证错误)我不知道为什么!?。 请帮我找出这个错误我已经尝试了很多次但我找不到任何解决方案。
【问题讨论】:
标签: flask flask-wtforms