【发布时间】:2016-08-13 20:05:58
【问题描述】:
所以我有一个看起来像这样的序列化程序
class BuildingsSerializer(serializers.ModelSerializer):
masterlisting_set = serializers.PrimaryKeyRelatedField(many=True,
queryset=Masterlistings.objects.all())
效果很好
serializer = BuildingsSerializer(Buildings.objects.get(pk=1))
serializer.data
生产
OrderedDict([
("masterlistings_set", [
"0a06e3d7-87b7-4526-a877-c10f54fa5bc9",
"343643ac-681f-4597-b8f5-ff7e5be65eef",
"449a3ad2-c76c-4cb8-bb86-1be72fafcf64",
])
])
但如果我将序列化程序中的查询集更改为
class BuildingsSerializer(serializers.ModelSerializer):
masterlistings_set = serializers.PrimaryKeyRelatedField(many=True, queryset=[])
我仍然得到相同的确切结果。
OrderedDict([
("masterlistings_set", [
"0a06e3d7-87b7-4526-a877-c10f54fa5bc9",
"343643ac-681f-4597-b8f5-ff7e5be65eef",
"449a3ad2-c76c-4cb8-bb86-1be72fafcf64",
])
])
这应该发生吗?我是否错误地使用了查询集? 我用 [] 作为一个简单的例子来表明无论我输入什么都不会改变。
请任何见解都是无价的
应该注意,主列表具有指向建筑物的主键关系。因此,主列表属于建筑物。
【问题讨论】:
标签: python django serialization django-rest-framework