Django, queryset, filter today



我正在尝试查询数据库并获取今天的条目。因此,我得到了一个带有日期-时间字段的Events模型。只是澄清一下,如果我删除日期过滤器,它确实会返回数据库中的条目。如果我加上它们,就没有了。我仔细检查了一下,今天有一个项目。

views.py

def dashboard(request):
    if request.user.is_authenticated():
        now = datetime.datetime.now()
        events_today = Event.objects.filter(date__year=now.year, date__month=now.month, date__day=now.day)
        return render_to_response("dashboard.html", {'today': events_today,},  RequestContext(request))

更新如果我在settings.py中将USE_TZ更改为False,它确实有效。但如果是True,则不会。更新2我甚至把这个项目上传到了我的VPS,以防它与我的电脑有关,但仍然是一样的。

使用timezone.now():而不是datetime.datetime.now()

from django.utils import timezone
timezone.now()

我想你可以试试这个查询:

events_today = Event.objects.filter(date=datetime.datetime.today())

相关内容

  • 没有找到相关文章

最新更新