我是 WTForms 的新手。我有一个带有提交按钮的用户注册表:
submit = SubmitField('Submit')
我想确保通过按下提交按钮而不是其他方式提交表单。在 docs 它指出
class wtforms.fields.SubmitField(default field arguments)
Represents an <input type="submit">. This allows checking if a given submit button has been pressed.
这提出了一个问题:对于我的情况,我是否需要添加“必需”验证器?
例如,是否需要:
submit = SubmitField('Submit', [validators.Required()])
最佳答案
我想你会的。查看源代码,没有什么可以使 SubmitField
成为必需的。SubmitField
实际上只是一个 BooleanField
:
class SubmitField(BooleanField):
"""
Represents an ``<input type="submit">``. This allows checking if a given
submit button has been pressed.
"""
widget = widgets.SubmitInput()
关联的小部件只是一个具有 type="submit"的输入小部件。它似乎也使用 SubmitField 的标签作为 HTML 中的文本。
class SubmitInput(Input):
"""
Renders a submit button.
The field's label is used as the text of the submit button instead of the
data on the field.
"""
input_type = 'submit'
def __call__(self, field, **kwargs):
kwargs.setdefault('value', field.label.text)
return super(SubmitInput, self).__call__(field, **kwargs)
它似乎并没有做更多的事情。
关于python - SubmitField 是否需要验证器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12907748/