【发布时间】:2015-04-16 10:22:30
【问题描述】:
盯着我的代码看了很长一段时间,我一直遇到同样的错误。有趣的是,我为我的模型的另一部分制作了一组类似的序列化程序,并且工作正常。
这是我不断收到的错误:
AttributeError at /onderhoudapi/conditiedeel/.json 得到 AttributeError 尝试在序列化程序上获取字段
gebreken的值时ConditiedeelSerializer。序列化器字段可能被命名 不正确且不匹配Conditiedeel上的任何属性或键 实例。原始异常文本是:“Conditiedeel”对象没有 属性“gebreken”。
序列化器.py
class GebrekSerializer(serializers.ModelSerializer):
class Meta:
model = Gebrek
fields = ('naam', 'get_type', 'get_omvang_waarde', 'get_intensiteit_waarde', 'get_ernst_waarde')
class ConditiedeelSerializer(serializers.ModelSerializer):
gebreken = GebrekSerializer(many=True, read_only=True)
class Meta:
model = Conditiedeel
fields = ('deel', 'conditiescore', 'gebreken', )
models.py
class Conditiedeel(models.Model):
deel = models.OneToOneField(Deel, null=True, blank=True)
conditiegroep = models.ForeignKey(Conditiegroep)
conditiescore = models.IntegerField(choices=CONDITIE_KEUZES)
#some class methods here
class Gebrek(models.Model):
naam = models.CharField(max_length=80)
omvang = models.IntegerField(choices=OMVANG_KEUZES)
intensiteit = models.IntegerField(choices=INTENSITEIT_KEUZES)
conditiedeel = models.ForeignKey(Conditiedeel)
nengebrek = models.ForeignKey(Nengebrek)
#class methods here
如您所见,Gebrek 类与 Conditiedeel 类有外来关系。这应该意味着我可以使用像here 这样的嵌套关系。我想我密切关注了这个例子,但我无法让它发挥作用。
【问题讨论】:
标签: django django-rest-framework