gpt4 book ai didi

django - 在序列化程序中使用深度时如何选择特定列

转载 作者:行者123 更新时间:2023-12-01 09:26:17 25 4
gpt4 key购买 nike

我有一个由两个 ForeignKeys 组成的模型。我只对解析 ForeignKeys 的内容感兴趣,所以我使用了 depth 变量,它基本上为我提供了 FK 引用的表的所有列。有没有办法选择应该包含哪些列?

class SomeSerializer(serializers.ModelSerializer):
class Meta:
model = MyAwesomeModel
fields = ('id', 'fk_one','fk_two')
depth = 1

最佳答案

尝试使用嵌套的序列化程序。文档 here .

例子:

class FKOneSerializer(serializers.ModelSerializer):
class Meta:
model = FKOne
fields = ('name', 'id')

class SomeSerializer(serializers.ModelSerializer):
fk_one = FKOneSerializer()

class Meta:
model = MyAwesomeModel
fields = ('id', 'fk_one','fk_two')

编辑:

类似的答案 here由 Django Rest 框架的创建者。还包括一些相关说明,包括嵌套序列化程序是只读的,您可能需要在序列化程序字段上包含 source 参数。

关于django - 在序列化程序中使用深度时如何选择特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23201155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com