Django-фильтр DateFromToRangeFilter не может не фильтровать между двумя датами

Я создаю проект на vue3 + django DRF. Я составляю списки потребления из и я хочу фильтровать между двумя днями. например 2024-06-01 до 2024-06-30.

Я использовал DateFromToRangeFilter, но он не работает. пожалуйста, помогите. omz

Моя модель.py

class ConsumeDetails(models.Model):
    date = models.DateField()
    category = models.CharField(max_length=100)
    subcategory = models.CharField(max_length=100)
    vendor = models.CharField(max_length=100)
    item = models.CharField(max_length=100)
    price = models.DecimalField(max_digits=10, decimal_places=0)
    remarks = models.CharField(max_length=100)

    consumetype = models.ForeignKey(ConsumeType, on_delete=models.PROTECT)
    consumepurpose = models.ForeignKey(ConsumePurpose, on_delete=models.PROTECT)

    class Meta:
        managed = True
        app_label = 'myweb'
        db_table = 'Consume_Details'

    def __str__(self):
        return self.date

Мой filter.py

class ConsumeDetailsFilter(FilterSet):
    # date = filters.DateFilter(field_name='date')
    RegDate= DateFromToRangeFilter(field_name='date', lookup_expr='gte',lable='date range')
    category = filters.CharFilter(field_name='category', lookup_expr='icontains')
    subcategory = filters.CharFilter(field_name='subcategory', lookup_expr='icontains')
    vendor = filters.CharFilter(field_name='vendor', lookup_expr='icontains')
    item = filters.CharFilter(field_name='item', lookup_expr='icontains')

    class Meta:
        model = ConsumeDetails
        fields = ['RegDate','category', 'subcategory', 'vendor', 'item', 'price', 'remarks']

Мой serializers.py

class ConsumeDetailsSerializer(serializers.ModelSerializer):

    consumepurpose = ConsumePurposeSerializer()
    consumetype = ConsumeTypeSerializer()

    class Meta:
        model = ConsumeDetails
        fields = '__all__'

Мой views.py

class ConsumeDetailsViewSet(ModelViewSet):
    queryset = ConsumeDetails.objects.all()
    serializer_class = ConsumeDetailsSerializer

    filterset_fields = ['consumepurpose','consumetype','category','subcategory','RegDate']
    search_fields = ['category','subcategory','vendor','item']

    pagination_class = MyPageNumberPagination

Сообщение об ошибке здесь

введите описание изображения здесь

Я хочу использовать star_date и end_date для фильтрации диапазона, как показано по ссылке ниже

<

как сказал Golfbauer, вы не можете поместить RegDate в список полей, потому что в вашей модели его нет, вместо этого вы можете добавить следующее, и я думаю, что это вам поможет:

star_date = DateFromToRangeFilter(field_name='date', lookup_expr='gte',lable='date range')
end_date = DateFromToRangeFilter(field_name='date', lookup_expr='lte',lable='date range')

так что вы можете фильтровать по дате начала (или больше), дате начала и дате окончания (диапазон) или дате окончания или меньше

Вернуться на верх