【发布时间】:2018-09-29 14:49:41
【问题描述】:
我已将 Django 配置为使用 file backend 在我的本地计算机上发送电子邮件。之前这似乎工作正常,所有邮件都记录在我在settings.py 文件中指定的目录中:
EMAIL_BACKEND = 'django.core.mail.backends.filebased.EmailBackend'
EMAIL_FILE_PATH = '/code/mails/'
但是,这突然停止工作。我检查了文件夹的权限,这似乎很好。我看不到任何错误。我正在使用 docker,当我启动 Python 服务器时,我的终端中显示了日志。通常,当出现错误时,我会在那里看到它。但什么也没有出现。为了测试,我重命名了文件夹并尝试发送邮件。这一次,也没有出现错误。在生产中,我的settings.py 不同但其他一切都相同,电子邮件发送得很好。所以代码似乎可以工作,但本地文件后端似乎是个问题。
有人知道吗?
我已经配置了这些日志设置:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': '/code/logs/debug.log',
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}
日志似乎工作正常并提供详细的日志记录;但这些都与电子邮件错误无关。
【问题讨论】:
-
您能否分享有关您的项目的更多信息,例如 Python e Django 版本和完整的本地设置?
-
你最近更新了你的 Django 版本吗?您是否尝试过通过
manage.py在本地运行,如果可以,它在那里工作吗? -
你也可以分享相关的 docker 配置吗?
/code/mails是在容器内部还是从主机安装?
标签: python django email django-settings django-email