Фильтрация поля DateTime с полем даты с использованием набора фильтров

Как мне фильтровать поле даты и времени только с полем даты. С моделью и фильтром ниже

http://localhost:8020/applications/?created=19-07-2017 возвращает пустой набор запросов даже с записями, у которых дата создания = 19-07-2017 (дата создания записи в datetime

В МОИХ МОДЕЛЯХ.PY

Class Application(models.Model):
  created = models.DateTimeField(auto_now=False, auto_now_add=True)

В МОИХ ФИЛЬТРАХ.PY

import django_filters

class ApplicationFilter(django_filters.FilterSet)
    created = django_filters.DateTimeFilter( label='Created')

    class Meta:
       model = Application
       fields = ['created']

person Mokgadi Rasekgala    schedule 31.07.2017    source источник


Ответы (3)


Использование содержит работы. Вместо этого используйте DateFilter и укажите формат даты

created=django_filters.DateFilter(input_formats=['%Y-%m-%d','%d-%m-%Y'],lookup_expr='icontains'
person Mokgadi Rasekgala    schedule 01.08.2017

используйте 1_

    created = django_filters.DateTimeFilter(name='created',lookup_expr='contains')

возможно, также нужно изменить формат даты, гггг-мм-дд

person newlife    schedule 31.07.2017

в вашем filter.py напишите это:

import django_filters

class ApplicationFilter(django_filters.FilterSet)
    class Meta:
       model = Application
       fields = {'created': '__all__'}

в вашем URL:

http://localhost:8020/applications/?created__date=19-07-2017 
person Negar37    schedule 04.02.2020