简单地返回列表区域
-->使用简单的序列化器许多=真调用它时(这将返回字典列表)
class SimpleRegionSerializer(serializers.ModelSerializer):
class Meta:
model = Region
fields = ('id', 'name')
用于获取区域列表以及每个区域下每个区域的公司列表
-->使用嵌套序列化器
class CompanySerializer(serializers.ModelSerializer):
class Meta:
model = Company
fields = ('id', 'name')
class NestedRegionSerializer(serializers.ModelSerializer):
company = CompanySerializer(many=True, read_only=True)
class Meta:
model = Region
fields = ('id', 'name')
还将公司模型更改为
class Company(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=256)
region = models.ForeignKey('Region', db_index=True, related_name='company')
related_name 与 NestedRegionSerializer 中的序列化器字段相同。
不要忘记运行迁移或syncdb
欲了解更多信息,请参阅http://www.django-rest-framework.org/api-guide/relations/#nested-relationships http://www.django-rest-framework.org/api-guide/relations/#nested-relationships以供更多参考。
您可以使用任何级别的嵌套,如果需要,您还可以指定“深度”作为元选项,它将提供有关嵌套深度的信息。