【发布时间】:2021-01-10 21:11:38
【问题描述】:
问题是我有一个“详细信息”字段,它应该呈现与其父序列化程序的嵌套关系。我尝试了很多东西,但似乎没有任何效果。
这是我的模型:
class BusinessOrderModel(OrderToModel):
reference = models.IntegerField()
business_num = models.ForeignKey('BusinessModel', on_delete=models.CASCADE)
def __str__(self):
return str(self.reference)
class BusinessModel(models.Model):
Business_num = models.IntegerField(primary_key=True)
def __str__(self):
return str(self.Business_num)
class DetailModel(models.Model):
id = models.AutoField(primary_key=True)
detail = models.TextField()
order = models.ForeignKey('BusinessOrderModel', on_delete=models.CASCADE)
这是我的序列化程序不起作用:
class DetailSerializer(serializers.ModelSerializer):
class Meta:
model = DetailModel
fields = ('id', 'detail')
class BusinessOrderSerializer(serializers.ModelSerializer):
details = DetailSerializer(many=True)
class Meta:
model = BusinessOrderModel
fields = ('reference', 'business_num', 'details')
我尝试了很多不同的方法,但我得到了这个错误:
尝试获取字段
details的值时出现 AttributeError 在序列化程序BusinessOrderSerializer上。序列化器字段可能是 命名不正确且不匹配任何属性或键BusinessOrderModel实例。原始异常文本是: “BusinessOrderModel”对象没有“详细信息”属性。
非常感谢任何帮助。
非常感谢。
【问题讨论】:
标签: django django-rest-framework