如何使用google smtp服务器从django发送电子邮件?

sta*_*guy 12 django google-app-engine smtp

我在看https://docs.djangoproject.com/en/dev/topics/email/

我的问题是,我是否可以在没有身份验证的情况下使用smtp.google.com,或者无需将我的身份验证信息放入settings.py或作为django.core.mail.send_mail函数中的参数?

此时我正在寻找在django上使用smtp.google.com的最佳做法,我知道有更好的解决方案,例如http://sendgrid.com/

Aks*_*aaj 11

如果smpt.gmail.com不提供auth_information即gmail密码,则无法使用.

但是,您可以将auth信息放入a中,local_settings.py并且不要在版本控制中添加此local_settings,因此除了您之外没有人会看到此文件.在您的网站中包含此local_settings settings.py.

settings.py

 ...
 EMAIL_HOST = 'smtp.gmail.com'
 EMAIL_PORT = 587
 EMAIL_USE_TLS = True
 ...
 ...
 from local_settings import *
Run Code Online (Sandbox Code Playgroud)

local_settings.py

EMAIL_HOST_USER = 'user@gmail.com'
EMAIL_HOST_PASSWORD = 'yourpassword'
Run Code Online (Sandbox Code Playgroud)


Car*_*cho 9

尝试将此包含在settings.py:

# Email configuration.

EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'user@domain.com'
EMAIL_HOST_PASSWORD = 'yourpassword'
EMAIL_USE_TLS = True
DEFAULT_FROM_EMAIL = 'user@domain.com'
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
Run Code Online (Sandbox Code Playgroud)

如果您有网络域名提供商(如namecheap,godady等),您可以将域名(mycompany.com)与Gmail关联.对于该功能,请在您的域名提供商处寻求帮助或查看Internet中的信息:

希望它有所帮助,欢呼.