[英]Select between two dates with Django
我正在寻找一个查询,在 Django 的日期之间进行选择。
我知道如何使用原始 SQL 很容易地做到这一点,但是如何使用 Django ORM 实现这一点?
这是我想在查询中添加 30 天之间的日期的地方:
start_date = datetime.datetime.now() + datetime.timedelta(-30)
context[self.varname] = self.model._default_manager.filter(
current_issue__isnull=True
).live().order_by('-created_at')
使用__range
运算符:
...filter(current_issue__isnull=True, created_at__range=(start_date, end_date))
两种方法
.filter(created_at__range=[from_date, to_date])
另一种方法
.filter(Q(created_at__gte=from_date)&Q(created_at__lte=to_date))
如果您使用的是DateTimeField
,则使用DateTimeField
过滤将不包括最后一天的项目。
您需要将值转换为日期:
...filter(created_at__date__range=(start_date, end_date))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.