Вы можете использовать диапазон для фильтрации по дате
. Вы можете преобразовать строку в дату, используя parse_date , например,
from django.utils.dateparse import parse_date
start = request.POST['from']
start_date = parse_date(start)
end = request.POST['to']
end_date = parse_date(end)
foo = bar.objects.filter(date__range=(start_date,end_date))
parse_date
функция вернет None, если заданная дата не в формате %Y-%m-%d
, поэтому в этом случае вы можете преобразовать в дату, как эта
start = request.POST['from']
start_date = datetime.datetime.strptime(start, "%Y-%m-%d").date()