首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pyramid_mailer不发电子邮件吗?

pyramid_mailer不发电子邮件吗?
EN

Stack Overflow用户
提问于 2012-06-20 20:31:36
回答 2查看 1.5K关注 0票数 2

新来的金字塔,并试图设置pyramid_mailer发送电子邮件给自己:

我在development.ini上有:

代码语言:javascript
复制
mail.host = smtp.gmail.com
mail.username = EMAIL@gmail.com
mail.password = PASSWORD
mail.port = 587
mail.ssl = True
[handlers]
keys = console

在我的项目/__init__. my中:

代码语言:javascript
复制
config.include('pyramid_mailer')

在我的项目/视图中

代码语言:javascript
复制
from pyramid_mailer.mailer import Mailer
from pyramid_mailer import get_mailer
from pyramid_mailer.message import Message

@view_config(renderer="templates/site_view.pt")

site_view(self):

..。

代码语言:javascript
复制
    config.registry['mailer'] = Mailer.from_settings(settings)
    mailer = request.registry['mailer']
    message = Message(subject="It works!",
                      sender="EMAIL@gmail.cm",
                      recipients=["EMAIL@gmail.com"],
                      body="Hey there!")

    mailer.send(message)

我是不是错过了一些最基本的东西?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-20 20:34:15

事实上,你错过了一些基本的东西!:-)

.send()是一种延迟发送,它将消息添加到事务管理器。如果您不使用pyramid_tm,则不会在请求结束时发送邮件。事务性电子邮件很好,因为如果在调用send()后在代码中引发异常,则不会发送邮件。

无论如何,让您的代码发送的方式是通过.send_immediately()

票数 5
EN

Stack Overflow用户

发布于 2012-06-23 13:17:14

您可能需要检查它并使用:

代码语言:javascript
复制
mail.tls = True

Can't send emails with pyramid_mailer and gmail

您还可以使用.send_immediately(message, fail_silently=False)

你会得到这样的东西:

代码语言:javascript
复制
mail.host = smtp.gmail.com
mail.username = EMAIL@gmail.com
mail.password = PASSWORD
mail.port = 587
mail.tls = True

在您的设置中:

代码语言:javascript
复制
config.include('pyramid_mailer')

然后

代码语言:javascript
复制
mailer = get_mailer(request)
message = Message(subject="It works!",
                  sender="EMAIL@gmail.cm",
                  recipients=["EMAIL@gmail.com"],
                  body="Hey there!")

mailer.send_immediately(message, fail_silently=False)

如果仍然没有工作,则可以使用

mail.debug =真

它应该将smtp会话转储到stdout中。如果有什么不管用的话。你会知道原因的。如果一切顺利的话。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11127706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档