我应该什么时候验证Flas中的表单数据

2024-03-29 11:07:17 发布

您现在位置:Python中文网/ 问答频道 /正文

标题有点模棱两可,但解释如下:

我在表单中有电子邮件字段。WTF表单验证一个正确的电子邮件地址,我可以在validate_on_submit之后继续。在

例如,如果电子邮件已经在注册表格中使用,我应该在哪里检查?我可以编写一个自定义验证器并触发验证错误,也可以在验证后继续,并可以刷新错误消息。在

哪个设计更好。优点和缺点是什么。在


Tags: 消息标题表单on电子邮件地址错误validate
2条回答

首先检查有效语法,然后检查它是否已被其他人使用。检查有效语法可能是一种更便宜的操作,因此从中开始更有效。在

同样从常识的角度来看,如果地址是无效的,那么假设您不会在意它是否已经在使用(如果这是可能的话)。在

任何一种设计都可以工作,但我认为让WTForm验证来验证实际的字段会更有意义。在

例如,如果您有一个电子邮件字段,该字段的输入为:

notanemail

这应该会抛出一个验证错误,因为它是验证字段中输入的合法错误。这才更有意义。在

输入为total@anemail.com的同一字段是有效的,因此验证应该继续,然后您可以检查已经被占用的电子邮件地址并闪烁错误。在

所有的一切都是关于分离关注点。WTForms应该只用于验证用户输入的有效信息,而不是数据库的有效输入。在

相关问题 更多 >