【发布时间】:2022-02-08 06:27:10
【问题描述】:
我想用 django 制作一个 Instagram 克隆。我正在尝试在 Django 模型上制作 Instagram 故事。如您所知,Instagram 故事会在 24 小时后被删除。如何从数据库中删除数据?
【问题讨论】:
标签: python django django-models django-rest-framework
我想用 django 制作一个 Instagram 克隆。我正在尝试在 Django 模型上制作 Instagram 故事。如您所知,Instagram 故事会在 24 小时后被删除。如何从数据库中删除数据?
【问题讨论】:
标签: python django django-models django-rest-framework
只需过滤掉这些。您可以制作如下所示的模型:
class MyModel(models.Model):
# …
timestamp = models.DateTimeField(auto_now_add=True, db_index=True)
那么您只能检索最多 24 小时前的 MyModel 对象:
from datetime import timedelta
from django.db.models.functions import Now
MyModel.objects.filter(timestamp__gte=Now()-timespan(days=1))
您可以偶尔运行一个管理命令来删除旧的MyModels:
from datetime import timedelta
from django.db.models.functions import Now
MyModel.objects.filter(timestamp__lt=Now()-timespan(days=1)).delete()
【讨论】: