Więc mam serializatora, który wygląda takDjango-REST serializer: queryset nie filtruje PrimaryKeyRelatedField wyniki
class BuildingsSerializer(serializers.ModelSerializer):
masterlisting_set = serializers.PrimaryKeyRelatedField(many=True,
queryset=Masterlistings.objects.all())
i działa świetnie
serializer = BuildingsSerializer(Buildings.objects.get(pk=1))
serializer.data
produkuje
OrderedDict([
("masterlistings_set", [
"0a06e3d7-87b7-4526-a877-c10f54fa5bc9",
"343643ac-681f-4597-b8f5-ff7e5be65eef",
"449a3ad2-c76c-4cb8-bb86-1be72fafcf64",
])
])
ale jeśli zmienię zestaw zapytań w serializatorze na
class BuildingsSerializer(serializers.ModelSerializer):
masterlistings_set = serializers.PrimaryKeyRelatedField(many=True, queryset=[])
Wciąż otrzymuję ten sam dokładny wynik z powrotem.
OrderedDict([
("masterlistings_set", [
"0a06e3d7-87b7-4526-a877-c10f54fa5bc9",
"343643ac-681f-4597-b8f5-ff7e5be65eef",
"449a3ad2-c76c-4cb8-bb86-1be72fafcf64",
])
])
Czy to ma się dziać? Czy nieprawidłowo używam zapytań? Użyłem [] jako prostego przykładu, aby pokazać, że bez względu na to, co wprowadzę, nic się nie zmieni.
Proszę Każdy wgląd byłby nieoceniony
Należy zauważyć, że masterlistings ma klucz podstawowy relacji wskazujący na budynkach. A więc masterlisting należy do budynku.
Niesamowite, akceptuję tę odpowiedź, ponieważ jest to czystsze z dwóch! –
Jesteś święty (12:04) – dps