【发布时间】:2015-03-13 07:38:47
【问题描述】:
我想为具有嵌套关系的模型创建序列化程序。我的模型如下所示:
class Master(models.Model):
en = models.TextField('English')
class Album(models.Model):
pk_album = models.AutoField(primary_key=True, serialize=True)
title = models.OneToOneField(Master, related_name='Album_title')
description = models.OneToOneField(Master, related_name='Album_description')
class Track(models.Model):
pk_track = models.AutoField(primary_key=True)
fk_album_parent = models.ForeignKey('Album', related_name='track_parent')
fk_album_child = models.ForeignKey('Album', related_name='track_child')
还有我的序列化器:
class masterSerializer(serializers.ModelSerializer):
class Meta:
model = Master
fields = ('en',)
class albumSerializer(serializers.ModelSerializer):
album_title = masterSerializer()
album_description = masterSerializer()
class Meta:
model = Album
fields = ('album_title', 'album_description')
class trackSerializer(serializers.ModelSerializer):
track_parent = albumSerializer(many=True, read_only=True)
track_child = albumSerializer(many=True, read_only=True)
class Meta:
model = Track
fields = ('track_parent', 'track_child')
我在我的观点中使用这个trackSerializer。但是在浏览器中我什么也没有得到意味着没有字段或数据只是空白 json。
我很困惑如何在 serlaizer 中处理这种嵌套关系,以便我的最终 API 可以正常工作。
【问题讨论】:
标签: python django django-rest-framework