使用flask-wtforms输出type =“ number”

use*_*084 2 python flask wtforms flask-wtforms

from flask.ext.wtf.html5 import NumberInput

class Form(Form):
    value = NumberInput( [Required()])
    submit = SubmitField('Next')
Run Code Online (Sandbox Code Playgroud)
{{ form.value }}
Run Code Online (Sandbox Code Playgroud)

上面的代码将输出以下内容:

<wtforms.widgets.html5.NumberInput object at 0x3c94a50>
Run Code Online (Sandbox Code Playgroud)

好吧,我期望的是:

<input type="number">
Run Code Online (Sandbox Code Playgroud)

基本上,问题是如何input type="number"使用wtforms 渲染。

Bar*_*ski 7

首先,您value应该是一个字段,而不是小部件。

value = IntegerField(widget=NumberInput())
Run Code Online (Sandbox Code Playgroud)

WTForms字段在调用时生成html,因此请尝试

{{ form.value() }}
Run Code Online (Sandbox Code Playgroud)