首页 > 解决方案 > Flask Mail - 设置一些短语的样式

问题描述

我正在使用 Flask Mail 发送电子邮件,但现在,在阅读文档后,我没有看到我无法格式化我的文本。

所以我的问题是: - 我可以格式化文本吗?例如使用斜体、粗体,甚至使用不同的字体。

如果可能,如何修改以添加此功能?

from flask import Flask
    from flask_mail import Mail, Message
    import os

    app = Flask(__name__)

    mail_settings = {
        "MAIL_SERVER": 'smtp.gmail.com',
        "MAIL_PORT": 465,
        "MAIL_USE_TLS": False,
        "MAIL_USE_SSL": True,
        "MAIL_USERNAME": os.environ['EMAIL_USER'],
        "MAIL_PASSWORD": os.environ['EMAIL_PASSWORD']
    }

    app.config.update(mail_settings)
    mail = Mail(app)


    if __name__ == '__main__':
        with app.app_context():
            msg = Message(subject="Test subject",
                          sender=app.config.get("MAIL_USERNAME"),
                          recipients=["<testacc@gmail.com>"], 
                          body="test email\nBest regards\n\nJohn Doe")

            mail.send(msg)

标签: emailflask

解决方案


您可以像这样在您的消息中包含 HTML

msg.html = "<b>testing</b>"

或渲染准备好的模板

msg = Message(subject="Test subject",
              sender=app.config.get("MAIL_USERNAME"),
              recipients=["<testacc@gmail.com>"])

msg.html = render_template('emails/your_template.html')
mail.send(msg)

看看这里


推荐阅读