我试图获取今天的所有条目,然后根据用户的时区将其显示给该用户。它们通过日期时间字段存储。我遇到的问题是所有时间都存储在 GMT 中,所以当我提取今天的记录时,它们在日期方面交叉,所以一些条目可能是 7 月 3 日,而一些条目可能是 7 月 4 日。然后当它通过时区标签显示给用户时,什么不是(比如东部时间),用户将看到昨天的条目以及今天的条目。我有任何标签或不同的方法可以用来解决这个问题。
View .py
def get_entry(request):
start_date = timezone.now().date()
end_date = start_date + timedelta( days=1 )
todays_entry = game.objects.filter(date__range=(start_date,end_date)).order_by('date').all()
return render(request, 'home.html', {'todays_entry':todays_entry})
模板.py
{% load tz %}
{% localtime on %}
{% for x in todays_entry %}
{{x.date}}.........
{% endfor %}
{% endlocaltime %}
输出类似于
July 3, 2015, 8:05 p.m,
July 3, 2015, 9:05 p.m,
July 4, 2015, 1:05 p.m,
July 4, 2015, 1:05 p.m
我真正想要的只是今天的东西......
最佳答案
你可以试试:
def get_entry(request):
today = datetime.datetime.now().today()
todays_entry = game.objects.filter(date__year=today.year, date__month=today.month, date__day=today.day)
return render(request, 'home.html', {'todays_entry':todays_entry})
过滤后不需要.all()
关于python - Django:仅显示今天的条目时的时区问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31220868/