【发布时间】:2014-05-03 15:17:39
【问题描述】:
我有两个模型:
class Organization(models.Model):
name = models.CharField(max_length=64)
class OrgUser(User):
organization = models.ForeignKey(Organization, related_name='users')
role = models.CharField(max_length=1, choices=USER_TYPE_CHOICES)
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = OrgUser
depth = 1
fields = ('email', 'role', 'organization',)
class OrganizationSerializer(serializers.HyperlinkedModelSerializer):
users = USerSerializer(many=True)
class Meta:
model = Organization
depth = 1
fields = ('name', 'users',)
我正在使用 Django REST 框架,我正在尝试为给定的 URL 获取以下输出:
GET /organization/
{
'name':'Hello World',
'users':[{ 'email':'test@gmail.com', 'role':'A' }]
}
GET /user/
{
'email':'test@gmail.com',
'role':'A',
'organization':{ 'name':'Hello World' }
}
所以GET /organization/ 正在给我用户数组和组织信息再次。
我一直在绞尽脑汁在我的序列化程序上设置depth 属性,但我一辈子都想不通。如果有人能指出我正确的方向,我将不胜感激。
【问题讨论】:
标签: python django django-rest-framework