我在Django中遇到send_mail
的问题。它一直工作正常,直到我尝试更改某些电子邮件设置,以使其使用EMAIL_HOST_USER和EMAIL_HOST_PASSWORD。当我这样做时,我的测试电子邮件发送到未发送的地方。
我恢复了原来的电子邮件设置,但是现在仍然没有发送电子邮件。我重新启动了一些东西以确保我当前的设置生效。当我运行命令'python manage.py send_mail'来测试我得到这个回复:
获得锁定...... 已锁定到位。戒烟。
查看mailer.engine中的代码:
def send_all():
"""
Send all eligible messages in the queue.
"""
lock = FileLock("send_mail")
logging.debug("acquiring lock...")
try:
lock.acquire(LOCK_WAIT_TIMEOUT)
except AlreadyLocked:
logging.debug("lock already in place. quitting.")
return
except LockTimeout:
logging.debug("waiting for the lock timed out. quitting.")
return
logging.debug("acquired.")
start_time = time.time()
dont_send = 0
deferred = 0
sent = 0
看起来因为它获得了“AlreadyLocked”异常,所以它会在不发送电子邮件的情况下退出。如果确实如此,我该如何打破这个锁并重新开始?
答案 0 :(得分:7)