添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
精彩文章免费看

Django中条件过滤:按时间筛选

你有没有遇到过,需要按时间筛选的问题?

我在models中的字段为dateTimeField,那么我该如何构造一个时间格式来和它比较呢?

索性我们有 datetime模块

<pre style="margin: 0px; padding: 0px; overflow: auto; overflow-wrap: break-word; white-space: pre-wrap; font-family: "Courier New" !important; font-size: 12px !important;">import datetime

now = datetime.datetime.now() #获取现在的时间
start = datetime.timedelta(hours=23,minutes=59,seconds=59) #获取当前时间中的一天内的开始时间

查询一天内的数据

model.objects.filter(date_time_field__gt=start)</pre>

import datetime
now = datetime.datetime.now()  #获取现在的时间
start = datetime.timedelta(hours=23,minutes=59,seconds=59)   #获取当前时间中的一天内的开始时间
#查询一天内的数据
model.objects.filter(date_time_field__gt=start)

其实这就没了,也就这么多的东西,哦,还有一些:

  • gt====大于
  • gte===大于等于
  • lt=====小于
  • lte====小于等于
  • 那如果要查一个时间段呢?

    我们用 __range

    start = datetime.date(2018,7,12)
    end = datetime.date(2018,7,13)
    model.objects.filter(date_time_filed__range=(start,end))
    

    查询某年 __year

    查询某月 __month

    查询某天 __day

    查询星期几__week__day