Ich arbeite mit Django Rest Framework API, ich versuche, einen Filter von first_name oder by last_name oder von beiden zu machen. Das ist mein ContactViewSet.py:Django Filter Backend
class ContactViewSet(viewsets.ModelViewSet):
queryset = Contact.objects.all()
serializer_class = ContactSerializer
filter_backends = (DjangoFilterBackend,)
filter_fields = ('first_name', 'last_name')
lookup_field = 'idContact'
Meine DRF Einstellungen:
REST_FRAMEWORK = {
'DEFAULT_FILTER_BACKENDS': ('django_filters.rest_framework.DjangoFilterBackend',),
}
Meine actuel Anforderungs-URL wie folgt aussieht:
http://localhost:8000/api/v1/contacts/?first_name=Clair&last_name=Test
Aber ich bin für so etwas wie folgt aussehen:
http://localhost:8000/api/v1/contacts/?first_name=Cl**&last_name=Tes**
Jede mögliche Hilfe würde geschätzt werden.
Nicht in der Lage diese atm zu testen ... ist 'first_name__startswith = Cl' arbeiten? .. – Sayse
Nein, das Problem ist, dass ich genau in dem first_name ausfüllen – Naella
zu filtern Wenn Sie nur daran interessiert sind, Filtern nach Abfrageparametern, dann wird das Schreiben eines benutzerdefinierten Managers tun, was auch immer Sie tun möchten. – zaidfazil