Flask WTForms Integerfield 类型是文本而不是数字
Flask WTForms Integerfield type is text instead of number
这是我试过的:
nrkomp = IntegerField('Number',validators=[NumberRange(min=1, max=5, message='Invalid length')])
在开发者工具中,这个表单输入的类型是文本而不是数字,我已经阅读了文档,但找不到解决这个问题的方法。
您可以使用 wtforms html5 fields to get html5 input types, and html5 widgets 作为它们的关联小部件。
from wtforms import Form
from wtforms.fields import html5 as h5fields
from wtforms.widgets import html5 as h5widgets
class F(Form):
n1 = h5fields.IntegerField("Number1")
n2 = h5fields.IntegerField(
"Number2", widget=h5widgets.NumberInput(min=0, max=100, step=10)
)
for f in F():
print(f)
<input id="n1" name="n1" step="1" type="number" value="">
<input id="n2" max="100" min="0" name="n2" step="10" type="number" value="">
这是我试过的:
nrkomp = IntegerField('Number',validators=[NumberRange(min=1, max=5, message='Invalid length')])
在开发者工具中,这个表单输入的类型是文本而不是数字,我已经阅读了文档,但找不到解决这个问题的方法。
您可以使用 wtforms html5 fields to get html5 input types, and html5 widgets 作为它们的关联小部件。
from wtforms import Form
from wtforms.fields import html5 as h5fields
from wtforms.widgets import html5 as h5widgets
class F(Form):
n1 = h5fields.IntegerField("Number1")
n2 = h5fields.IntegerField(
"Number2", widget=h5widgets.NumberInput(min=0, max=100, step=10)
)
for f in F():
print(f)
<input id="n1" name="n1" step="1" type="number" value="">
<input id="n2" max="100" min="0" name="n2" step="10" type="number" value="">