序列化通过另一个mod

2024-09-28 12:15:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我有四个模型是这样连接的:

class A:
  some fields

class B:
  ForeignKey('A')

class C:
  ForeignKey('B')

class D:
  ForeignKey('C')

现在,当我序列化时,我还想序列化A中的相关模型字段。当然,这可以使用嵌套序列化程序来完成,如下所示:

class ASerializer:

  class Meta:
    model = A
    fields = ('id', some fields)

class BSerializer:
  a_s = ASerializer(read_only=True)

  class Meta:
    model = B
    fields('id', 'a_s')

class CSerializer:
  b_s = BSerializer(read_only=True)

  class Meta:
    model = C
    fields('id', 'b_s')

class DSerializer:
  c_s = CSerializer(read_only=True)

  class Meta:
    model = D
    fields('id', 'c_s')

但是,我只想在序列化D时显示相关A对象的字段,而不包括C或B对象。我该怎么做?你知道吗


Tags: 模型idtrueonlyfieldsreadmodel序列化

热门问题