Python 使用日期范围筛选模型

Python 使用日期范围筛选模型,python,django,django-filter,Python,Django,Django Filter,我正在使用django_过滤器和django_rest_框架为我的数据创建rest端点 我有一个模型,我想通过传递开始日期和结束日期作为查询参数来过滤它。到目前为止,我在django_filters模块中发现了DateFilter和DateRangeFilter类。但我找不到任何与之相关的文件 下面是模型、序列化程序和视图的代码 class Holiday(models.Model): holiday_name = models.CharField(max_length=30) city_na

我正在使用django_过滤器和django_rest_框架为我的数据创建rest端点

我有一个模型,我想通过传递开始日期和结束日期作为查询参数来过滤它。到目前为止,我在
django_filters
模块中发现了
DateFilter
DateRangeFilter
类。但我找不到任何与之相关的文件

下面是模型、序列化程序和视图的代码

class Holiday(models.Model):

holiday_name = models.CharField(max_length=30)
city_name    = models.ForeignKey(City)
description  = models.CharField(max_length=100)
date         = models.DateTimeField()

def __unicode__(self):
    return u'%s %s' %(self.holiday_name, self.city_name)

class HolidaySerializer(serializers.ModelSerializer):
class Meta:
    model = Holiday
    fields = ('holiday_name', 'city_name','description', 'date')


class HolidayFilter(django_filters.FilterSet):
  class Meta:
     model = Holiday
     start_date = django_filters.DateFilter(name="date",    lookup_type='gte')
    end_date   = django_filters.DateFilter(name="date", lookup_type='lte')
    fields = ['date']


class HolidayList(generics.ListAPIView):
  queryset = Holiday.objects.all()
  serializer_class= HolidaySerializer
  filter_backends = (filters.DjangoFilterBackend,)
  filter_class = HolidayFilter

我可以将开始日期和结束日期作为参数传递,但它不起作用。我得到了整个查询集。

请为序列化程序、模型和视图添加一些代码。这里还有一个问题可以帮助您:[如何使用django_过滤器。DateFilter][1][1]:我用代码更新了这个问题。仍然不确定我缺少了什么。请为序列化程序、模型和视图添加一些代码。这里还有一个问题可以帮助您:[如何使用django_过滤器。DateFilter][1][1]:我用代码更新了这个问题。还是不知道我错过了什么。