0
在我的用戶表單中,我想保留'email'字段爲可選,但如果提到電子郵件,那麼我的自定義驗證器應該可以工作。我預計下面的代碼工作。但不幸的是它不工作:驗證WTForms中的可選字段
class AddUserForm(Form):
email = TextField('Email ID', [validators.Optional(strip_whitespace=True)])
@staticmethod
validate_email(form, field):
if field.data is not None:
if not is_valid_email_id_custom_function(field.data):
raise ValidationError('please enter a valid email id')
我想要的效果如下:
- 如果電子郵件字段爲空,什麼都不做,這是確定有空白。
- 但是如果電子郵件字段有一些數據,則驗證它是否可接受。
如果我聲明電子郵件字段是可選的,那麼驗證將被完全忽略。我有這方面的解決方法,但有沒有任何地道和直接的方法來解決這個問題?