我有一个django模型如下:
class A(models.Model):
comments = models.CharField(max_length=200, blank=True)
class B(models.Model):
name = models.CharField(max_length=50, blank=True)
class c(models.Model):
a = models.ForeignKey(A, related_name='modelA')
b = models.ForeignKey(B, related_name='modelB')
我的序列化程序如下:
class ASerializer(serializers.ModelSerializer):
class Meta:
model = A
class CSerializer(serializers.ModelSerializer):
class Meta:
model = C
class BSerializer(serializers.ModelSerializer):
modelB = CSerializer(many=True, read_only=True)
class Meta:
model = B
B序列化程序的工作原理如下:
[
{
"id": 2,
"modelB": [
{
"id": 1,
"b": 2,
"a": 3
}
]
}
]
我需要调整以使结果如下:
[
{
"id": 2,
"modelB": [
{
"id": 1,
"b": 2,
"a": [
{
"id": 1,
"comments": "",
}
]
}
]
}
]
答案 0 :(得分:1)
按如下方式更改 CSerializer :
class CSerializer(serializers.ModelSerializer):
a = ASerializer()
class Meta:
model = C