Flask Security模块中的电子邮件垃圾邮件过滤

时间:2018-04-09 12:40:47

标签: python flask

我在申请注册时遇到了一些垃圾邮件问题。它由Flask安全模块完成。如何在将数据写入数据库之前自定义注册方法以包含垃圾邮件过滤?我已经将方法@ user_registered.connect_via挂钩以发送邮件。需要你的帮助才能解决这个问题。提前谢谢。

使用的版本:

Python - 2.7 烧瓶 - 0.10.1 Flask-Security - 1.7.5

1 个答案:

答案 0 :(得分:0)

使用下面给出的代码很好:

from flask_security.forms import ConfirmRegisterForm

security = Security(app, datastore,
                confirm_register_form=ExtendedConfirmRegisterForm)


class ExtendedConfirmRegisterForm(ConfirmRegisterForm):
   def __init__(self,*args,**kwargs):
       super(ExtendedConfirmRegisterForm,self).__init__(*args,**kwargs)

   def validate(self):
      if not super(ExtendedConfirmRegisterForm,self).validate():
          return False

      if is_spam(self.email.data):
         logging.error('It is a spam mail %s'%self.email.data)
         self.email.errors.append('This mail id is a Spam')
         return False

      return True