如何从Google App Engine中的django App发送电子邮件

时间:2012-03-26 15:26:42

标签: python django google-app-engine

我创建了一个Django应用程序,也在google应用程序引擎上托管了它。我可以从django应用程序发送电子邮件,但在将其托管到应用程序引擎后我无法做到这一点。我真的遇到了这个问题,所以请告诉我是否有任何解决方案在谷歌应用程序引擎中使用django电子邮件功能。

我尝试了 appengine_django ,但它无效。

Django版本1.3.1

python版本2.6.5

4 个答案:

答案 0 :(得分:3)

默认情况下,Django附带一个使用sendmail发送电子邮件的电子邮件后端。 App Engine上没有Sendmail。

如果您使用Django-nonrel,它会附带一个使用GAE电子邮件服务的电子邮件后端。 https://github.com/django-nonrel/djangoappengine,请查看mail.py

据我所知,它只是经过测试才能使用整个Django-nonrel框架。如果你在没有剩下Django-nonrel的情况下使用它,那么就需要一些hackery。

答案 1 :(得分:2)

Google只允许您从他们在Google应用引擎中控制的域名发送电子邮件。因此,您必须从他们提供给您的测试域,gmail帐户发送它,或者您需要将他们的名称服务器用于您的域名。

答案 2 :(得分:2)

问题解决了。

只需点击链接即可。 http://andialbrecht.de/blog/2009/11/04/pluggable-app-engine-e-mail-backends-for-django.html

我认为这是在Google App Engine中使用Django电子邮件功能的最简单方法。

答案 3 :(得分:2)

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

EMAIL_BACKEND = 'djangoappengine.mail.EmailBackend'

然后您可以使用django的本机send_mail函数发送电子邮件。我自己测试了它。