1
我試圖配置Flask-Security以異步方式發送郵件。使用Flask-Security發送異步郵件
我有一些通過Flask-Mail發送異步郵件的代碼,但是我很難將它與我的應用程序工廠函數集成在一起,以便它與Flask-Security一起使用。
應用工廠:
mail = Mail()
db = SQLAlchemy()
security = Security()
from app.models import User, Role
user_datastore = SQLAlchemyUserDatastore(db, User, Role)
def create_app(config_name):
# Config
app = Flask(__name__)
app.config.from_object(config[config_name])
config[config_name].init_app(app)
# Initialize extensions
mail.init_app(app)
db.init_app(app)
security.init_app(app, user_datastore)
return app
在燒瓶中,安全文檔,它說用@security.send_mail_task
覆蓋擴展發送電子郵件的方式。
那麼我究竟在哪裏實現這個裝飾器?看起來像我把它放在應用程序工廠裏的任何地方,我會得到循環進口。
這些都是異步電子郵件功能,我嘗試使用,從this issue採取:
@async
def send_security_email(msg):
with app.app_context():
mail.send(msg)
@security.send_mail_task
def async_security_email(msg):
send_security_email(msg)
哪裏需要該碼被整理與應用工廠上班?
在此先感謝。