Standardmäßig ruft RetrieveAPIView oder RetrieveUpdateAPIView lookup_field
ab, um Model abzurufen.RetrieveAPIView ohne Nachschlagefeld?
In meinem Fall möchte ich jedoch mein Modell von self.request.user abrufen.
ist hier views.py Beispiel
class ProfileRetrieveAndUpdateProfile(generics.RetrieveUpdateAPIView):
queryset = Profile.objects.all()
serializer_class = ProfileRetrieveAndUpdateSerializer
lookup_field = 'user_id'
def get_queryset(self):
qs = Profile.objects.all()
logged_in_user_profile = qs.filter(user=self.request.user)
return logged_in_user_profile
Kann ich RetrieveAPIView verwenden ohne lookup_field?
wo Sie feststellen, dass außer Kraft setzen 'lookup_field' erforderlich ist? Ich habe es nicht in den Dokumenten gefunden, und es funktioniert bei meinem Projekt. –
Dieser Attr hat den Standardwert in der 'GenericAPIView' und wird für get-Objekt verwendet. –
Ich erhalte diesen Fehler, wenn ich 'Lookup_field' nicht spezifiziere: Erwartete Ansicht ProfilePageView, die mit einem URL-Schlüsselwortargument namens" pk "aufgerufen werden soll. Korrigieren Sie das URL-Konfig oder setzen Sie das Attribut ".lookup_field" in der Ansicht korrekt. –