我正在尝试在Django应用中找到日期时间字段比当前日期时间早的记录。
我有这样的事情:
records = Record.objects.filter(my_field__lte=datetime.now())
但是,它只查找日期早于今天的记录(如果有比现在更早的记录,但在今天的日期,则不会返回。)
编辑:只是为了澄清。如果该字段设置为19:59:00 12-10-2011,当前时间是20:00:00 12-10-2011,那么我希望在查询集中返回此记录。但是,在第二天运行查询之前,它实际上并未返回。 (它在cronscript上每五分钟运行一次,用于根据此日期时间字段发送电子邮件)
希望能够解决它。
BTW,我正在使用MySQL
有人可以帮忙吗?
任何建议表示赞赏。
由于
答案 0 :(得分:1)
检查数据库是否可以看到时间属性,接下来检查模型中是否有models.DateTimeField而没有models.DateField错误
答案 1 :(得分:0)
只测试明天午夜而不是现在:
now = datetime.now()
midnight = datetime(now.year, now.month, now.day+1, 0, 0, 0)
records = Record.objects.filter(my_field__lt=midnight)
或者您可以使用date.today
和timedelta
来获得相同的效果:
from datetime import date, timedelta
tomorrow = date.today() + timedelta(days=1)
records = Record.objects.filter(my_field__lt=tomorrow)