如何使用Django Rest框架过滤器创建日期时间过滤器
我正在尝试创建datetime筛选器,但我的类没有按预期工作。我曾经这样做过。我没有收到任何错误,但我也没有收到任何错误,这是我的筛选器类:如何使用Django Rest框架过滤器创建日期时间过滤器,django,python-3.x,datetime,Django,Python 3.x,Datetime,我正在尝试创建datetime筛选器,但我的类没有按预期工作。我曾经这样做过。我没有收到任何错误,但我也没有收到任何错误,这是我的筛选器类: import rest_framework_filters as filters from core import models class FeedFilter(filters.FilterSet): timestamp_gte = filters.DateTimeFromToRangeFilter() class Meta:
import rest_framework_filters as filters
from core import models
class FeedFilter(filters.FilterSet):
timestamp_gte = filters.DateTimeFromToRangeFilter()
class Meta:
model = models.MQTTFeedWeather
fields = {
'created_at': ('lte', 'gte')
}
模型类:
class MQTTFeedWeather(models.Model):
sensor = models.ForeignKey(
'SensorDevice',
on_delete = models.CASCADE
)
feed = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
我的看法是:
class DeviceFeedListAPI(generics.ListAPIView):
authentication_classes = (authentication.TokenAuthentication,)
permission_classes = (permissions.IsAuthenticated, permissions.IsAuthenticated,)
queryset = models.MQTTFeedWeather.objects.all()
serializer_class = serializers.WeatherFeedSerializer
pagination_class = pagination.PostLimitOffsetPagination
filter_backends = (DjangoFilterBackend,OrderingFilter,SearchFilter)
filter_class = filters.FeedFilter
search_fields = ('feed',)
我想在表中创建的_上创建一个日期时间筛选器。当我运行url时:
它不过滤数据。谁能帮我一下我做错了什么!!谢谢 嗨,你可以这样试试
class FeedFilter(django_filters.rest_framework.FilterSet):
start_date = django_filters.DateTimeFilter(field_name='created_at', lookup_expr='gte')
end_date = django_filters.DateTimeFilter(field_name='created_at', lookup_expr='lte')
class Meta:
model = MQTTFeedWeather
fields = ('start_date', 'end_date')
嗨,你可以这样试试
class FeedFilter(django_filters.rest_framework.FilterSet):
start_date = django_filters.DateTimeFilter(field_name='created_at', lookup_expr='gte')
end_date = django_filters.DateTimeFilter(field_name='created_at', lookup_expr='lte')
class Meta:
model = MQTTFeedWeather
fields = ('start_date', 'end_date')
url将是什么??你能写下这句话吗?网址是什么??请你也写一下好吗