我正在尝试编写一个单独的邮件服务,它与我们的 Flask 应用程序解耦。我正在寻找一种在用户首次登录我们的 Flask 应用程序时发送欢迎电子邮件的方法。我正在使用 Celery 和 RabbitMQ 异步执行此操作。
这是我的电子邮件功能:
sen = 'example@gmail.com'
pwd = 'my_password'
@celery.task
def send_email(nickname, email):
msg = MIMEMultipart('alternative')
msg['Subject'] = 'my_sub'
msg['From'] = sen
msg['To'] = email
html = <b>test_body</b>
part1 = MIMEText(html, 'html')
msg.attach(part1)
server = smtplib.SMTP("smtp.gmail.com", 587)
server.ehlo()
server.starttls()
server.login(sen, pwd)
server.sendmail(sen, [email], msg.as_string())
server.close()
最初我使用 Flaskrender_template
来获取 HTML 正文和主题。但我不想使用 Flask 扩展(我有我的理由)。所以我的问题是:
如何使用电子邮件模板以便轻松配置主题和正文字段?
如何将默认电子邮件发件人和密码放入
config
文件/电子邮件模板(可能与 q1 相关)?似乎我有很多代码可以发送一封简单的电子邮件。你能推荐一些优化技术(省略步骤)吗?