Tôi đang cố gắng tuần tự hóa một mô hình có chứa trường thuộc tính mà tôi cũng muốn tuần tự hóa.
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')
Khi cố gắng truy cập URL có liên quan, tôi nhận được ngoại lệ trình nối tiếp (KeyError) trên thuộc ext_link
tính.
Làm thế nào tôi có thể tuần tự hóa ext_link
tài sản?
fields
, trong ví dụ trên, bạn sẽ nhận được tất cả cácMyModel
trường cộngext_link
trong dữ liệu được tuần tự hóa. Và điều này thực sự tuyệt vời cho các mô hình phức tạp! CHỈNH SỬA : Ít nhất, điều này đúng vớidjangorestframework==2.3.14
.