I'm trying to filter by dateTime in django restFramework. it seems that it does not work, because it does not filter, it always brings the same results.
Model.py
#Modelo Fechas que formara parte del modelo horario
class Fecha(models.Model):
fecha_inicio = models.DateTimeField(blank=True, default='')
fecha_fin = models.DateTimeField(blank=True, default='')
def __str__(self):
return self.fecha_inicio, self.fecha_fin
#Modelo Horario
class Horario(models.Model):
profesional = models.ForeignKey(Profesional, unique=True)
fechas = models.ManyToManyField(Fecha)
def __str__(self):
return self.profesional.user.username
View.py
class FechaList(generics.ListAPIView):
filter_backends = (django_filters.rest_framework.DjangoFilterBackend,)
serializer_class = FechaSerializer
queryset = Fecha.objects.all()
filter_class = HorarioFilter
Urls.py
url(r'^horario/$', views.FechaList.as_view())
Filters.py
class HorarioFilter(django_filters.FilterSet):
date_start = django_filters.DateTimeFilter(name="fecha_inicio")
class Meta:
model = Fecha
fields = {
'date_start': ['lte', 'gte', 'lt', 'gt'],
}
Serializers.py
class FechaSerializer(serializers.ModelSerializer):
class Meta:
model = Fecha
fields = ('fecha_inicio','fecha_fin')
Request: http://127.0.0.1:8000/horario/?date_start__gte=2015-6-28+00:00 . Don't do anything, dont filter but the response it's a listo of "horario" object and give a 200 code.
Thank you!!!! :)