【发布时间】:2012-12-31 04:56:19
【问题描述】:
class Data(models.Model):
time = models.DateTimeField()
我的变量中有:
var = 2013-01-17 17:30
Data.objects.filter(time=var)
我需要今天的所有数据(2013-01-17 - 没有时间)
怎么办?
【问题讨论】:
标签: django
class Data(models.Model):
time = models.DateTimeField()
我的变量中有:
var = 2013-01-17 17:30
Data.objects.filter(time=var)
我需要今天的所有数据(2013-01-17 - 没有时间)
怎么办?
【问题讨论】:
标签: django
似乎没有一种非常直接的方法可以做到这一点。见How can I filter a date of a DateTimeField in Django?。
您可以使用 strptime 从字符串中获取日期时间 (Converting string into datetime):
from datetime import datetime
datetime.strptime(var, '%Y-%m-%d %H:%M:%S')
【讨论】:
我遇到了同样的问题,并通过使用 models.DateField() 而不是 models.DateTimeField() 来解决它。
【讨论】:
你可以在过滤器中使用范围
Data.objects.filter(date__range=(date_min, date_max))
您可以在 00.00 和 23.59 之间设置时间
【讨论】: