6
class Data(models.Model):
    time = models.DateTimeField()

我的变量中有:

var = 2013-01-17 17:30

Data.objects.filter(time=var)

我需要今天的所有数据(2013-01-17 - 没有时间)

怎么做?

4

3 回答 3

15

我遇到了同样的问题,只需使用models.DateField()而不是models.DateTimeField().

于 2013-12-09T18:11:18.583 回答
1

似乎没有一种非常简单的方法可以做到这一点。请参阅如何在 Django 中过滤 DateTimeField 的日期?.

您可以使用 strptime 从字符串中获取日期时间(将字符串转换为日期时间):

from datetime import datetime

datetime.strptime(var, '%Y-%m-%d %H:%M:%S')
于 2013-01-16T19:38:58.260 回答
0

您可以在过滤器内使用范围

Data.objects.filter(date__range=(date_min, date_max))

您可以在 00.00 和 23.59 之间设置时间

于 2013-12-09T18:32:01.693 回答