我的模型中有一个名为DateTimeField
的{{1}}。我想查询今天创建的对象。从this question开始,我使用了以下查询集
created_at
返回零结果。我已确保数据库中存在一个今天创建的条目。我知道我也可以使用
In [70]: today = datetime.datetime.today().date()
In [72]: Business.objects.filter(created_at__date=today)
Out[72]: <QuerySet []>
但它会产生结果并发出警告:
Business.objects.filter(created_at__contains=today)
我正在使用MySQL数据库。我的模型是
django/db/backends/mysql/base.py:71: Warning: (1292, "Incorrect datetime value: '%2017-12-21%' for column 'created_at' at row 1")
答案 0 :(得分:1)
from django.utils import timezone
Business.objects.filter(created_at__gte=timezone.now())
我想这对你来说会更好。
并更改您的模型
created_at = models.DateTimeField(auto_now=True)
然后makemigrations,迁移然后添加一些数据并再试一次
答案 1 :(得分:0)
使用时区库
today = timezone.datetime.today().date()
否则
today = timezone.now().date()