【问题标题】:Flask WTForms IntegerFieldFlask WTForms 整数字段
【发布时间】:2019-08-26 16:18:57
【问题描述】:

wtforms.IntegerField.data 没有在 post 方法上传递给 html 模板,但在 get 方法上却是。

在下面的代码中将 IntegerField 替换为 StringField 确实会将数据传递给 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)

【问题讨论】:

  • 尝试将标题更改为更具描述性的标题以指导其他成员

标签: python flask flask-wtforms


【解决方案1】:

我也遇到过同样的问题。我发现的一种解决方法是在模板中设置值。这当然不是最佳的,但现在可以。

{% if form.number.data %}
{{ form.number(value=form.number.data) }}
{% else %}
{{ form.number() }}
{% endif %}

【讨论】:

  • 我遇到了类似的问题。您的解决方案有效。感谢 Pox 和 Wimpie 发布此内容
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 2014-07-28
  • 1970-01-01
  • 2023-03-07
  • 1970-01-01
  • 2015-03-05
  • 2017-06-07
相关资源
最近更新 更多