Я использую Flask-Mail для отправки уведомлений моим пользователям, вот фрагмент моего кода:
def send_async_email(app, msg):
with app.app_context():
mail.send(msg)
def send_email(subject, sender, recipients, text_body, html_body):
msg = Message(subject, sender=sender, recipients=recipients)
msg.body = text_body
msg.html = html_body
Thread(target=send_async_email, args=(current_app._get_current_object(), msg)).start()
В моем html_body я отправляю шаблон счета-фактуры, включая статические файлы, такие как .png и .gif , но при отправке электронного письма оно не отправляется. включил статические файлы в почтовый ящик пользователя.
В моем html-скрипте приведен фрагмент того, как я называю статические файлы:
<img src="{{ url_for('static', filename='email-template/images/facebook@2x.png') }}"/>
Я также пытался добавить _external=True
в вызов статических файлов, но все еще не работает.
и затем я также попытался не использовать jinja2 при вызове файлов, например:
src="./images/facebook@2x.png"
Я пытаюсь отправить это письмо с и на GMAIL , и я также проверил его в Yahoo , но все еще не работает.
Итак, возможно ли включить статический файл при отправке электронной почты с помощью Flask-Mail ..?
РЕДАКТИРОВАТЬ : После того, как я попытаюсь разными способами и в нескольких экспериментах, я также не могу добавить CSS из внешнего вида, как начальный загрузчик ( это работает в моем локальном, но стиль не отображается в почтовом ящике )
Я все еще пытаюсь найти способ решить эту проблему.
РЕДАКТИРОВАТЬ 2 : После долгих попыток я все еще не понимаю этого, даже если отправляю почту напрямую, используя GMAIL API , следуя этому хорошему статья .
РЕДАКТИРОВАТЬ 3 : После почти двух месяцев, с которыми я столкнулся с этой проблемой, она работает теперь, когда я отправляю электронное письмо, если мое приложение работает на VPS, но не работает, если мое приложение работает на локальной или на герою ( hobby dev )