我正在尝试检索 10 天之前的数据来更新该字段数据。目前我的模型就像
class Restaurant(models.Model):
is_approved = models.BooleanField(null=False, default=False)
timestamp = models.DateTimeField(auto_now_add=True)
我的数据库表是
现在当我查询数据库时:
dish = Restaurant.objects.filter(timestamp__gt=datetime.now() - timedelta(days=10))
我得到了整个表的数据。我什至尝试过从一天改为一天。它仍然是完整的数据库结果。
如果你想要的数据是older那么你可能需要使用__lt
代替__gt
.
import datetime
from django.utils import timezone as tz
d = tz.now() - datetime.timedelta(days=10)
dish = Restaurant.objects.filter(timestamp__lt=d)
Django 推荐使用timezone.now() https://docs.djangoproject.com/en/2.2/topics/i18n/timezones/#naive-and-aware-datetime-objects代替datetime.now()
确保时区信息正确。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)