通过Django Rest Framework API,我试图在将来为所有对象提供日期时间。Django:timezone.now()不返回当前日期时间
问题是,一旦服务器启动,每当我提交查询时,API将服务所有对象的日期时间大于服务器启动的日期时间,而不是日期时间大于当前时间。
from django.utils import timezone
class BananasViewSet(viewsets.ReadOnlyModelViewSet):
queryset = Banana.objects.filter(date_and_time__gte=timezone.now())
...
没有任何更多的运气,我也试过这种变化:
import datetime as dt
class BananasViewSet(viewsets.ReadOnlyModelViewSet):
queryset = Banana.objects.filter(date_and_time__gte=
timezone.make_aware(dt.datetime.now(), timezone.get_current_timezone())
...
制作在Django壳类似的查询返回正确的对象是最新的......
那么,你的意思是'timezone.now()'应该返回当前时间而不是服务器启动的时间? –
确实我认为'timezone.now()'应该返回当前时间。这就是它在shell中所做的。 –