djangorestframework: Filterung in einem verwandten Bereich
Grundsätzlich möchte ich herausfiltern inaktiver Benutzer aus einem verwandten Bereich von einer ModelSerializer. Ich habe versucht, Dynamisch begrenzend queryset von verwandten Bereich sowie die folgenden:
class MySerializer(serializers.ModelSerializer):
users = serializers.PrimaryKeyRelatedField(queryset=User.objects.filter(active=True), many=True)
class Meta:
model = MyModel
fields = ('users',)
Keiner dieser Ansätze gearbeitet, für die nur die Filterung der queryset. Ich möchte das für eine verschachtelte Verwandte Serializer-Klasse als ein Feld (konnte aber nicht einmal zum laufen bekommen mit einem RelatedField).
Wie Filtere ich queryset für geschachtelte relation?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Werde ich neugierig zu sehen, eine bessere Lösung als gut. Ich habe eine benutzerdefinierte Methode in meinem serializer zu tun. Es ist ein wenig Ausführlicher, aber zumindest ist es explizit.
Einige pseudo-code, wo ein GarageSerializer würde filter die geschachtelte relation Autos:
Natürlich ersetzen Sie den queryset mit, was Sie wollen. Sie brauchen nicht immer das zu geben, den Kontext (ich habe es benutzt, um etwas query-Parameter in der verschachtelten serializer) und Sie wahrscheinlich nicht brauchen, die .select_related (das war eine Optimierung).