【发布时间】:2020-02-03 16:27:36
【问题描述】:
当我直接指定 EMAIL_HOST_USER 和 EMAIL_HOST_PASSWORD 时,电子邮件发送正确,但如果尝试使用 os.environ,则会引发以下错误 (530, b'5.7.0 Authentication Required. Learn more at\n5.7.0 https://support.google.com/mail/?p=WantAuthError l26sm20714449pgn.46 - gsmtp', 'webmaster@localhost')。我曾尝试在 .bashrc 和 .bash_profile 中添加变量,但没有奏效。我尝试过的内容如下所示。谁能帮帮我。
settings.py
>变量如下所示。
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
# EMAIL_HOST_USER = 'name@gmail.com'
# EMAIL_HOST_PASSWORD = '123456789'
EMAIL_HOST_USER = os.environ.get('EMAIL_HOST_USER')
print('variable :',os.environ.get('EMAIL_HOST_USER'))
EMAIL_HOST_PASSWORD = os.environ.get('EMAIL_HOST_PASSWORD')
.bashrc
此文件位于 settings.py 所在的同一目录中。
import os
export EMAIL_HOST_USER = 'name@gmail.com'
export EMAIL_HOST_PASSWORD = '9538913650'
主要
下面是我在终端中尝试过的全局和虚拟环境。
EMAIL_HOST_USER=name@gmail.com
EMAIL_HOST_PASSWORD=123456789
使用 python 命令
代码如下。
import os
os.environ.set('EMAIL_HOST_USER') = 'name@gmail.com'
os.environ.set('EMAIL_HOST_PASSWORD') = 12345678
【问题讨论】: