Flask-Mail not sending emails, no error is being reported

前端 未结 3 1987
隐瞒了意图╮
隐瞒了意图╮ 2021-01-17 15:06

All, I\'m trying to setup flask-mail to send notifications to my email when a user registers. I\'m getting no error messages from the script used to send the email, but not

相关标签:
3条回答
  • 2021-01-17 15:20

    tbicr has the most likely fix, check MAIL_SUPPRESS_SEND first.

    What ended up burning me (being new to flask) is that when you instantiate your Mail() object, be sure it's after you've set your app.config values. The Mail() object doesn't go back and look at these values after the fact, so they will default to bad values. What's frustrating is that you won't see any errors when you try to send messages with the default/bad values. At least not as of my posting.

    0 讨论(0)
  • 2021-01-17 15:25

    I know this post is from a while ago, but I just ran into the same issue. Like @tbicr mentioned make sure that app.testing is set to False. As it states in the Flask-Maildocs here:

    "If the setting TESTING is set to True, emails will be suppressed. Calling send() on your messages will not result in any messages being actually sent."

    This was exactly my problem. I implemented Google reCAPTCHA into one of my forms and the app.testing was set to True so I did not have to hit the reCAPTCHA box every time. By removing the app.testing or by setting it to False, the emails were able to be sent.

    0 讨论(0)
  • 2021-01-17 15:26

    Flask-Email use smtplib which can set debug level: https://github.com/mattupstate/flask-mail/blob/master/flask_mail.py#L139. You can set it with MAIL_DEBUG = True or DEBUG = True. Also check that MAIL_SUPPRESS_SEND = False and TESTING = False.

    With debug I can see in stdout mail progress: success, fail, recipients and etc.

    See details: http://pythonhosted.org/Flask-Mail/#configuring-flask-mail.

    0 讨论(0)
提交回复
热议问题