[英]Making django app notify people at specific time
简短的介绍
在创建事件一定时间后,如何使我的应用将通知发送到人员列表?
详细描述
我的网站允许Bob投放他想在线销售的商品。 有几个人看到它并想购买它。 如果6小时后没有人感兴趣,则应通过电子邮件通知卖方。
解决方案我发现我觉得很脏
每分钟运行crontab来检查人们不感兴趣的全部文章。 缺点 :不太准确+扫描整个数据库+我的应用程序外部...
有更好的解决方案吗?
您正在寻找的是https://pypi.python.org/pypi/django-cron/0.3.6
本质上,您在INSTALLED_APPS中使用django_cron作为
INSTALLED_APPS = (
'django_cron',)
通过在项目根目录中创建cron.py来设置cron作业
class SixHourEmailUpdate(CronJobBase):
code = 'six_hour_reminder_cron'
schedule = Schedule( run_every_mins = 360 ) # 6 hours
def do(self):
# Your email sending
另外,您还必须设置一个cron作业,该作业会不时地运行一次。
*/5 * * * * bash /home/tester/my_cron/cron.sh
cron.sh反过来调用
python /home/tester/app/my_app/manage.py runcrons
此处提供更多文档http://django-cron.readthedocs.org/en/latest/sample_cron_configurations.html#run-at-times-feature
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.