我基本上要寻找的是WTForms的InputRequired()
的RadioField等效验证器。我的意思是,当您尝试提交表单而不在具有InputRequired()
验证器的StringField字段中输入任何文本时,用户会在文本字段上方看到提示,提示"Please fill out this field"
。我希望用户必须选择male
或female
。
只需在HTML表单中包含required
属性,就可以轻松地在HTML表单中完成此操作。但我似乎无法理解RadioField的WTForms中的等效内容。 InputRequired()
和DataRequired()
都仅用于输入文本字段,似乎无法与任何其他类型的字段一起使用。
如果我有以下非常简单的WTForms类用于注册表单,则InputRequired()
在这种情况下效果很好,因为它会提示用户"Please fill out this field"
,如果他们忘记将{{1}放在其中}或name
。除非他们在这些字段中输入内容,否则表单不会提交。
surname
但是,如果我具有下面的表格,其中包含一个RadioField,什么等效的验证器可以迫使用户选择class Signup(FlaskForm):
name = StringField('First Name', validators=[InputRequired()])
surname = StringField('Last Name', validators=[InputRequired()])
submit = SubmitField('Signup')
或Male
,如果他们没有选择,我要给出提示Female
? (我正在使用BootStrap)我似乎找不到任何有关它的信息。是否存在?第二个答案中的This问题基本上是我正在寻找的"please fill out this field"
,但是自2018年6月以来,这个问题已经过时了。我尝试使用Required="Required"
的每种方法几乎都做了或InputRequired()
与DataRequired()
一起使用,但没有成功。
RadioField
答案 0 :(得分:0)
IMO,您目前只能使用这种方式来实现:
{% for subfield in form.age %}
<tr>
<td>{{ subfield(required="required") }}</td>
<td>{{ subfield.label }}</td>
</tr>
{% endfor %}