需要仔细检查的几件事:
- 你安装了 django-mailer 吗?
- 邮件程序在您的 PYTHONPATH 中吗?导入邮件程序时,您是否获得了预期的模块(版本和预期的路径)?
- 邮件程序是否列在您的 INSTALLED_APPS 中?
$ ./manage.py shell
>>> import mailer
>>> mailer.get_version()
'0.1.0'
>>> mailer.__file__
/PATH/TO/YOUR/PYTHON/LIBS/mailer/__init__.py
>>> # did it import? did you get the expected version? expected path?
>>> # good, django-mailer is in your PYTHONPATH. now verify project settings.
>>> from django.conf import settings
>>> 'mailer' in settings.INSTALLED_APPS
True
此时,您应该在可用的 manage.py 子命令列表中看到 send_mail。
$ ./manage.py --help
用法:manage.py 子命令 [options] [args]
[...]
runserver
send_mail
shell
[...]
$
之后,您还需要确保您正在./manage.py send_mail
通过 cron 作业运行。
* * * * * (cd $YOUR_PROJECT; /usr/bin/python manage.py send_mail >> cron_mail.log 2>&1)
0,20,40 * * * * (cd $YOUR_PROJECT; /usr/bin/python manage.py retry_deferred >> cron_mail_deferred.log 2>&1)
在开发过程中无需实际设置这两个 cronjobs,只需通过管理员查找您的消息即可。
django-mailer 模块有使用说明,但这应该能让你启动并运行。