嵌套序列化Django对象


大家好,我想序列化我的模型的对象。我的模型是这样的:
class User (models.Model):
name = models.CharField(max_length=30)
family_name = models.CharField(max_length=30)

我有另一个这样的模型:

class Child (models.Model):
little_name = models.CharField(max_length=30)
user = models.ForeignKey("User", on_delete=models.CASCADE,)

我想用用户字段中的所有字段序列化我的一个子对象,例如:

{"id": 1 ,
"little_name": "Sam",
"user": {"id": 1,
"name": "Karim",
"family_name":"Kari"
}
}

我使用model_to_dict((和dict((以及django的序列化程序,但我无法强制获取用户字段,他们会这样返回:

{"id": 1 ,
"little_name": "Sam",
"user": "id": 1,
}

我不想使用django-rest序列化程序我能做什么?!?

使用model_to_ct两次:

child_dict = model_to_dict(child)
child_dict['user'] = model_to_dict(child.user)

最新更新