wtforms.IntegerField.data没有在post方法上传递给html模板,但在get方法上传递给了html模板。
在下面的代码中用StringField替换IntegerField确实会将数据传递给html模板。我遗漏了什么或做错了什么?
class TestForm(FlaskForm):
number = IntegerField('Number')
@app.route('/', methods=['POST', 'GET'])
def home():
form = TestForm()
if request.method == 'GET':
form.number.data = 100
if request.method == 'POST':
form.number.data = 200
return render_template('number.html', form=form)发布于 2019-12-01 01:46:07
我也一直面临着同样的问题。我发现的一种解决方法是在模板中设置值。这当然不是最优的,但目前它是有效的。
{% if form.number.data %}
{{ form.number(value=form.number.data) }}
{% else %}
{{ form.number() }}
{% endif %}https://stackoverflow.com/questions/57661533
复制相似问题