python - 如何在django中根据结束日期自动删除记录

标签 python django date model

我有一个 Django 应用程序,其模型如下

Class Promotion(models.Model):
    name = models.CharField(max_length=256)
    start_date = models.DateTimeField()
    end_date = models.DateTimeField()

因此,在创建促销记录的过程中,我们将为其设置开始日期结束日期,那么当当前日期大于结束日期,该记录应该自动从数据库中删除,否则将发送一封电子邮件......所以有些这种情况。

所以有人可以告诉我,如何处理这些情况,我的意思是当当前日期大于促销日期时做一些事情......

最佳答案

我会实现 management command删除任何“过期”的 Promotion 记录,即 end_date 已过。然后是计划任务,一个cron job在 Ubuntu(和 Unix 风格的系统)中,将按照您通过 crontab 指定的时间表调用管理命令,在本例中至少每天一次。

编辑:或者,您可以使用celery“周期任务”来运行计划任务,文档here .

关于python - 如何在django中根据结束日期自动删除记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19715528/

相关文章:

java - 无法将 '0000-00-00 00:00:00' 转换为 TIMESTAMP

python - 以编程方式添加和删除 tkinter python 标签会导致 IndexError : list index out of range

python - 用 python 解析 Facebook feed 日期时间?

django - 如何在 django 1.5 中进行应用程序迁移

Excel VBA 接受错误的日期输入

java - 我无法将日期变量传递给构造函数 - 无法解析

python - 如何使用 PyMongo find() 搜索嵌套数组属性?

python - TypeError : NoneType, 相等则可以比较,大于则报错

python - 如何避免 Python 文件输入缓冲

python - Django 在模型方法上通过装饰器发送信号?