django rest framework - 针对日期查询参数进行过滤
django rest framework - filtering against date query parameter
在我看来,我收到了 date
参数,我正在根据它进行过滤,这样我就可以显示我今天的联系方式,它是这样的:
filter_date = self.request.query_params.get('filter_date', None)
for queryset in contact_lead:
if filter_date is not None:
queryset = queryset.filter(next_action_date__gte=filter_date)
return queryset
就像我说的那样,我可以看到我今天的联系人,但有些联系人是过去的,现在因为 datepicker
有过去的日期限制,我看不到他们,我想要所有我过去的联系人会在今天或未来任何一天出现,所以重点是我不想留下过去创建的联系人,所以有人可以帮助我并解释我如何获得该结果。
在查询查找中将大于或等于 (__gte
) 替换为小于或等于 (__lte
)。如下图:
queryset = queryset.filter(next_action_date__lte=filter_date)
这将解决问题。
有两个运算符可以执行此操作,一个小于或等于(__lte)
如下所示:
queryset = queryset.filter(next_action_date__lte=filter_date)
第二个小于(__le),
这不会给出当前的过滤条件
queryset = queryset.filter(next_action_date__lt=filter_date)
在我看来,我收到了 date
参数,我正在根据它进行过滤,这样我就可以显示我今天的联系方式,它是这样的:
filter_date = self.request.query_params.get('filter_date', None)
for queryset in contact_lead:
if filter_date is not None:
queryset = queryset.filter(next_action_date__gte=filter_date)
return queryset
就像我说的那样,我可以看到我今天的联系人,但有些联系人是过去的,现在因为 datepicker
有过去的日期限制,我看不到他们,我想要所有我过去的联系人会在今天或未来任何一天出现,所以重点是我不想留下过去创建的联系人,所以有人可以帮助我并解释我如何获得该结果。
在查询查找中将大于或等于 (__gte
) 替换为小于或等于 (__lte
)。如下图:
queryset = queryset.filter(next_action_date__lte=filter_date)
这将解决问题。
有两个运算符可以执行此操作,一个小于或等于(__lte)
如下所示:
queryset = queryset.filter(next_action_date__lte=filter_date)
第二个小于(__le),
这不会给出当前的过滤条件
queryset = queryset.filter(next_action_date__lt=filter_date)