Я пытаюсь настроить Flask-Security для отправки асинхронного сообщения.Отправка async-email с 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 говорится использовать @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)
Где нужно ставить, чтобы работать с приложением завода этот код?
Заранее спасибо.