在Django中特定时间后如何自动从数据库中删除记录

时间:2019-12-20 10:08:19

标签: django-2.2

我有一个名为“投诉”的模型,其中包含许多条目,并且如果该条目在数据库中的时间超过3天,我想删除该条目。我该怎么做,是否有任何查询指定时间。我还要存储条目的存储时间。这是我的models.py文件。

complaint_for = models.CharField(max_length=25, choices=COMPLAINT_CHOICES, default='Misbehave')
name = models.CharField(max_length=50)
created = models.DateTimeField(auto_now_add=True)

1 个答案:

答案 0 :(得分:0)

说实话,我从未与Django一起工作过,但据我所知,一种在一定时间间隔后删除记录的好方法是自动运行数据库脚本。就您而言,我可以想象您在数据库表中的某处有一个名为creation_time或类似名称的列,然后使用脚本,您可以检查当前时间与{{ 1}}等于或大于指定的时间间隔。如果是这样,脚本将删除该记录。为了自动运行这样的脚本,您可以启动creation_time。您可以在主题cron作业上阅读有关如何使用sql herehere删除记录的主题的更多信息。