【发布时间】:2013-03-27 03:08:11
【问题描述】:
我有一个采用expires_at 时间字段的模型。从某种意义上说,用户可以设置条目无效的时间。那时,我需要做一些具体的操作,比如发送电子邮件和/或更改模型中的参数。
具体来说,假设我有一个模型:
class SomeModel(models.Model):
... #Code here ...
expires_at = models.DateTimeField()
现在,保存模型时,expires_at 字段中将设置一个时间,该时间是未来的某个时间。这个时候,我需要发邮件。
我看过 django 的信号功能,但不是很成功。我不想求助于运行不断轮询数据库或其他东西的 cronjobs。有人能指出我正确的方向吗?
【问题讨论】:
-
cronjobs 确实会反复轮询数据库,但这不会对性能造成巨大影响,因为您将查询自上次执行 cron 作业以来发生的变化。
标签: django django-models scheduled-tasks crontab django-signals