如何在Google App Engine中从Django应用程序发送电子邮件

3
我创建了一个Django应用程序,并将其托管在Google App Engine上。我可以从Django应用程序发送电子邮件,但将其托管到App Engine后就无法发送了。我真的被这个问题困住了,请告诉我是否有解决方案可以在Google App Engine中使用Django电子邮件功能。
我尝试过`appengine_django`,但它不起作用。
Django版本为1.3.1,Python版本为2.6.5。
4个回答

3
默认情况下,Django带有一个电子邮件后端,使用sendmail发送电子邮件。但是,在App Engine上无法使用sendmail。
如果您使用Django-nonrel,则带有一个使用GAE电子邮件服务的电子邮件后端。https://github.com/django-nonrel/djangoappengine,请查看mail.py。
据我所知,它只能与整个Django-nonrel框架一起使用进行测试。如果没有使用Django-nonrel的其他部分,则需要进行一些技巧操作。

还有一个可插拔的电子邮件后端是独立于djangoappengine创建的,如果您想要更轻量级/不那么复杂的解决方案。根据我在开发环境中的测试,它在发布此帖子时可以正常工作。https://bitbucket.org/andialbrecht/appengine_emailbackends/overview - floer32

2

谷歌只允许您在谷歌应用引擎控制的域名下发送电子邮件。因此,您必须从他们提供的测试域名、Gmail帐户发送邮件,或使用他们的域名服务器来发送您的域名邮件。


2

2
此页面已经无法访问,错误代码为404。 - mariowise

2

是的,appengine_django不起作用。你需要使用djangoappengine.mail.EmailBackend,所以在你的settings.py中应该有:

EMAIL_BACKEND = 'djangoappengine.mail.EmailBackend'

然后您可以使用Django的本地send_mail函数发送电子邮件。 我已经亲自测试过它可以正常工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接