gpt4 book ai didi

python - WTForms Flask(wtf_flask) 验证器如何为 RadioField 包含 "required"属性

转载 作者:行者123 更新时间:2023-12-03 16:56:10 25 4
gpt4 key购买 nike

我主要寻找的是 WTForms 的 InputRequired() 的 RadioField 等效验证器。我的意思是,当您尝试提交表单而不在具有 InputRequired() 验证器的 StringField 字段中输入任何文本时,用户会在文本字段上方收到提示,提示 “请填写此字段”。我希望用户必须选择 malefemale

这在 HTML 表单中很容易完成,只需在 HTML 表单中包含 required 属性即可。但我似乎无法理解 RadioField 在 WTForms 中的等价物。 InputRequired()DataRequired() 都仅适用于输入文本字段,似乎不适用于任何其他类型的字段。

如果我有下面非常简单的注册表单 WTForms 类,InputRequired() 在这种情况下效果很好,因为它会提示用户 “请填写此字段” 如果他们忘记输入他们的 namesurname。除非他们在这些字段中输入内容,否则表单不会提交。

class Signup(FlaskForm):
name = StringField('First Name', validators=[InputRequired()])
surname = StringField('Last Name', validators=[InputRequired()])
submit = SubmitField('Signup')

但是如果我有以下带有 RadioField 的表单,强制用户选择 MaleFemale 的等效验证器是什么,如果他们不选择一个我想给出提示“请填写此字段”? (我正在使用 BootStrap)我似乎找不到任何关于它的信息。它存在吗? This第二个答案中的问题基本上就是我要找的 Required="Required" 但自 2018 年 6 月以来已经过时了。我几乎尝试了所有尝试使用 的方法InputRequired()DataRequired()RadioField 但没有成功。

class StudentPersonalQs(FlaskForm):
gender = RadioField('Gender', choices = [('Male','Male'),('Female','Female')])
age = SelectField('Age', choices = [('12', '12'), ('13', '14'),('15', '15'), ('16', '16'),('17', '17'), ('18+', '18+')])
submit = SubmitField('Signup')

最佳答案

IMO,目前只能通过这种方式实现:

{% for subfield in form.age %}
<tr>
<td>{{ subfield(required="required") }}</td>
<td>{{ subfield.label }}</td>
</tr>
{% endfor %}

关于python - WTForms Flask(wtf_flask) 验证器如何为 RadioField 包含 "required"属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55313809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com