django没有过滤日期时间?

时间:2014-12-24 06:53:03

标签: python django

我有这个代码,而且我发现它没有过滤我想要的日期,

这是我的代码:

today    = 2014-12-24 00:00:00+08:00  #<type 'datetime.datetime'>
tomorrow =  2014-12-25 00:00:00+08:00  #<type 'datetime.datetime'>

for i in Showtime.objects.filter(movie_id=movieid,theater_id=theaterid,datetime__range=(today,tomorrow)):
    print i
    if i.mvtype not in movietimes:
        movietimes[i.mvtype] = []
    movietimes[i.mvtype].append(i.movietime.strftime('%Y-%m-%dT%H:%M:%S.%fZ'))
return movietimes

我打印i看看发生了什么。我发现它没有过滤日期

2014-12-23 16:10:00+00:00
2014-12-24 09:00:00+00:00
2014-12-25 05:00:00+00:00
2014-12-23 06:50:00+00:00
2014-12-23 11:10:00+00:00
2014-12-23 13:20:00+00:00
2014-12-23 15:30:00+00:00

它应该只显示12-24到12-25之间的日期:

2014-12-23 16:10:00+00:00   (this +8 hr is 2014-12-24)
2014-12-24 09:00:00+00:00

请帮助我谢谢!!

1 个答案:

答案 0 :(得分:0)

你想要

Showtime.objects.filter(movie_id=movieid,theater_id=theaterid,movietime__range=(today,tomorrow))

我想?

由于您的字段名称为movietime,因此语法应为movietime__range进行过滤。