【发布时间】:2020-12-29 18:17:30
【问题描述】:
我有 json 日期时间 像这样
{
"datetime": "2020-09-11 11:09:52",
}
我尝试过滤它是这样的
localhost:8000/api/v1/history?datetime=2020-09-11%2011:09:52。
Here what i tried
class AuditlogFilter(filters.FilterSet):
datetime = filters.DateTimeFilter(method="datetime_filter")
class Meta:
model = CRUDEvent
fields = ['datetime']
def datetime_filter(self, queryset, name, value):
return queryset.filter(Q(datetime__icontains=value))
但是我得到了空值。有没有办法我可以归档它???
提前谢谢...
【问题讨论】:
-
您是否也可以在使用此过滤器类的地方添加views.py,而现在您为什么要尝试按这种情况进行过滤
Q(datetime__icontains=value?您想获得在确切日期时间创建的 CRUDEvent 吗?我建议您在 start_datetime 和 end datetime 等时间范围内进行过滤 -
是的,就是这样。 @BakhtiyarBekbergen
-
您只想获得一个项目或项目列表?我想如果有几个对象,例如,得到对象的结果列表会很好,按范围过滤会很好
-
你能给我提供任何方法吗??
-
start_datetime = django_filters.DateTimeFilter(field_name='datetime', lookup_expr='gte') end_datetime = django_filters.DateTimeFilter(field_name='datetime', lookup_expr='lte')然后将这些字段添加到元类内的字段列表中
标签: django django-rest-framework django-filter