Ich habe also einen Serializer, der so aussieht
%Vor%und es funktioniert super
%Vor%erzeugt
%Vor%aber wenn ich das Abfrage-Set im Serializer zu
ändere %Vor%Ich bekomme immer noch dasselbe genaue Ergebnis zurück.
%Vor%Soll das passieren? Benutze ich Abfragesätze falsch? Ich habe [] als ein einfaches Beispiel benutzt, um zu zeigen, dass sich, egal was ich einstelle, nichts ändert.
Bitte jede Einsicht wäre von unschätzbarem Wert
Es sollte beachtet werden, dass Masterlistings eine Primärschlüsselbeziehung haben, die auf Gebäude zeigt. Ein Masterlisting gehört also zu einem Gebäude.
Wie von @zymud aufgezeigt, wird das Argument queryset in PrimaryKeyRelatedField zum Validieren der Feldeingabe zum Erstellen neuer Einträge verwendet. Eine weitere Lösung zum Herausfiltern von masterlistings_set ist die Verwendung von serializers.SerializerMethodField () wie folgt:
%Vor% queryset
im verwandten Feld begrenzt nur zulässige Werte. Mit queryset=[]
können Sie also keine neuen Werte zu masterlisting_set
hinzufügen oder neue Buildings
erstellen.
UPDATE. Wie verwende ich das Abfrage-Set zum Filtern?
Dies ist ein bißchen schwierig - Sie müssen ManyRelatedField
und many_init
method in Ihrem RelatedField
neu schreiben.
Tags und Links python django serialization django-rest-framework