我在申请注册时遇到了一些垃圾邮件问题。它由Flask安全模块完成。如何在将数据写入数据库之前自定义注册方法以包含垃圾邮件过滤?我已经将方法@ user_registered.connect_via挂钩以发送邮件。需要你的帮助才能解决这个问题。提前谢谢。
使用的版本:
Python - 2.7 烧瓶 - 0.10.1 Flask-Security - 1.7.5
答案 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