我正在尝试序列化包含我也要序列化的属性字段的模型。
models.py:
class MyModel(models.Model):
name = models.CharField(max_length=100)
slug = models.AutoSlugField(populate_from='name')
@property
def ext_link(self):
return "/".join([settings.EXT_BASE_URL, self.slug])
serializers.py:
class MyModelSerializer(serializers.ModelSerializer):
class Meta:
model = MyModel
fields = ('name', 'ext_link')
尝试获取相关的URL时,我在该ext_link
属性上遇到了一个序列化程序异常(KeyError)。
我如何序列化ext_link
属性?
fields
,在上面的示例中,您将获得序列化数据中的所有MyModel
字段加ext_link
。这对于复杂的模型真的很棒!编辑:至少,这是正确的djangorestframework==2.3.14
。