我想知道这是否是最好的方法,但Flask-Mail扩展程序接受一些SMTP
服务器配置,并随时调用send
类的Mail
函数将被发送。
我正在使用SMTP
提供程序,并编写了我自己的send函数,它利用了Flask-Mail扩展的Message对象,现在我想修补邮件对象以使用这个自定义函数。
我尝试过以下方法:
from flask_mail import Mail
#override the send email to use
#the elastic email
Mail.send = _custom_send
app = Flask(__name__)
mail = Mail()
mail.init_app(app)
和
app = Flask(__name__)
mail = Mail()
mail.send = types.MethodType(_custom_send, mail)
mail.init_app(app)
但是,仍然会调用send
类的现有Mail
函数。
有什么想法吗?
答案 0 :(得分:2)
关于你的第一句话
我想知道这是否是最好的方法
为什么不将原始的Mail
类继承为子类并重新定义.send
?
class MyMail(Mail):
def send(self, ...):
....