Instalar con pip:
pip install django-filter.- Y entonces añadir
'django_filters'a tusINSTALLED_APPS. - Uso
http://django-filter.readthedocs.org/en/latest/usage.html.
| class GatoFilter(django_filters.FilterSet): | |
| class Meta: | |
| model = Gato | |
| fields = ['user__pk', ] |
| class Gato(models.Model): | |
| user = models.ForeignKey(User) |
| class GatosSerializer(serializers.ModelSerializer): | |
| class Meta: | |
| model = Gato | |
| fields = '__all__' |
| class GatoView(mixins.CreateModelMixin, | |
| mixins.ListModelMixin, | |
| mixins.UpdateModelMixin, | |
| mixins.DestroyModelMixin, | |
| mixins.RetrieveModelMixin, | |
| viewsets.GenericViewSet): | |
| """ /api/v1/gato/?user__pk=pk_user """ | |
| authentication_classes = (TokenAuthentication, ) | |
| serializer_class = GatoSerializer | |
| queryset = Gato.objects.all() | |
| filter_backends = (filters.DjangoFilterBackend, ) | |
| filter_class = GatoFilter | |
| pass |