python - 烧瓶的烧瓶邮件扩展在应用程序工厂结构中不起作用
问题描述
我想要做的是在应用程序工厂中配置我的烧瓶邮件扩展,以便从不同的 .py 文件发送邮件,但我无法这样做。我知道我的配置是正确的,因为我在使用单个文件时具有相同的配置设置文件结构
__init__.py
from flask import Flask
from flask_mail import Mail,Message
def create_app():
mail = Mail()
app.config['MAIL_SERVER']='smtp.gmail.com'
app.config['MAIL_PORT']=465
app.config['MAIL_USE_SSL']=True
app.config['MAIL_USERNAME'] = ''
app.config['MAIL_PASSWORD'] = ''
app.config['MAIL_DEFAULT_SENDER'] = ''
app.config['MAIL_USE_TLS'] = False
mail.init_app(app)
return app
以及我愿意发送电子邮件的文件: dev.py
from flask import *
@bp.route('/login',methods=['GET','POST'])
def login():
if request.method == 'POST':
emailid = request.form['emailid']
msg = Message('Password Change', sender = '')
msg.add_recipient(emailid)
msg.html = "<b>MADHAV</b>"
mail.send(msg)
我收到的错误如下:
NameError: name 'Message' is not defined
解决方案
通过查看您忘记在Message
其中添加对象的导入。
如果这是您得到的唯一错误,那么以下行应该可以解决问题。
开发者.py
from flask-mail import Message
推荐阅读
- ruby - 在 rspec 共享示例中传递参数
- python-3.x - 我正在尝试查找每行中包含数据的最后一列并将列名返回到数据框
- r - 返回分组数据子组的最小值
- mvvm - Xamarin.Forms 控件模板绑定不起作用
- android - 是否有必要在 android 应用上使用 com.google.android.gms.ads.AdActivity ?
- haskell - % 在 Haskell 中做了什么?
- azure-webjobs - 有没有办法以编程方式从 WebJob 中的另一个函数调用 WebJob 函数并且仍然具有输出绑定工作?
- php - $Order 访问受保护的数组
- python - 破折号:执行触发功能时的“锁定”按钮
- spring-boot - 如何使用 Spring Boot 正确设置 JDBC 控制器类?