Python 从Django DateTime字段查找相对日期
型号:Python 从Django DateTime字段查找相对日期,python,django,Python,Django,型号: class MyClass(models.Model): car = models.ForeignKey(Car) date = models.DateTimeField(auto_now=True, auto_now_add=True) SELECT car FROM cars_myclass WHERE date < NOW() - INTERVAL 1 DAY; sql: class MyClass(models.Model): car = mod
class MyClass(models.Model):
car = models.ForeignKey(Car)
date = models.DateTimeField(auto_now=True, auto_now_add=True)
SELECT car FROM cars_myclass WHERE date < NOW() - INTERVAL 1 DAY;
sql:
class MyClass(models.Model):
car = models.ForeignKey(Car)
date = models.DateTimeField(auto_now=True, auto_now_add=True)
SELECT car FROM cars_myclass WHERE date < NOW() - INTERVAL 1 DAY;
从cars\u myclass中选择car,其中date
所以,我有这样的想法:
cars = MyClass.objects.all().filter(date < ... )
cars=MyClass.objects.all().filter(日期<…)
但是如何编写NOW()-间隔1天?谢谢。传递对象(对象减去):
更新由Mikko Ohtamaa发表的评论:
另外,为了避免时区出现问题,我建议使用而不是datetime.datetime.now()
(从Django 1.4开始提供)
为了避免时区问题,我建议使用timezone.now()
而不是datetime.datetime.now()
Discussion@mikkoohtama,谢谢您的评论。我用你的评论更新了答案。
import datetime
from django.utils import timezone
cars = MyClass.objects.filter(date__lt=timezone.now() - datetime.timedelta(days=1))