我使用django模型过滤器和日期。
原始数据有非洲/阿比让的时间(UTC + 00:00),我将这些数据保存在我的数据库中。
我设置了关于亚洲/首尔的时区(UTC + 09:00),它在我的数据库中保存得很好。
但是我使用time_range = [2015-11-15,2015-11-16]过滤数据,我得到的数据是从15点钟到14点钟。我希望从0 o'时钟到23 o'时钟。
我怎么能得到这个?我做这个网址,但它不能很好地工作。
class Post(models.Model):
created_time = models.DateTimeField()
如果我有一个像post这样的模型,我会从用户那里得到日期。
input_date = '2015-11-16' (from user)
from_date = datetime.strptime(input_date, '%Y-%m-%d').date()
to_date = from_date + datetime.timedelta(days=1)
posts = Post.objects.filter(created_time__range=[from_date, to_date])
我使用了上层代码并从2015-11-15 15:00:00到2015-11-16 14:00:00获得了数据。
答案 0 :(得分:0)
尝试使用from_date = datetime.strptime(input_date, '%Y-%m-%d')
(不使用.date()
),可能需要datetime
代替date
对象。