0
我有两个型号,默认的用户模型和扩展了用户模型中的用户配置模式:Django的REST框架 - 序列化多个模型
class UserProfile(models.Model):
user = models.OneToOneField(User, related_name='UserProfile')
universidad = models.ForeignKey(Universidad, related_name ='universidad')
group_admin = models.ManyToManyField(Group, related_name = 'group_admin')
我试图获取用户领域,允许GET, PUT和POST数据:
'username' = 'foo'
'password' = 'password'
'email' = '[email protected]'
'universidad' = 'Harvard'
'group_admin' = [1] #list of groups id
我已经使用嵌套序列化器,但它是只读的。
我也证明了这个解决方案,但我得到一个KeyError:'universidad'。
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = ('url', 'username', 'password', 'email','universidad', 'group_admin')
write_only_fields = ('password',)
任何帮助,将不胜感激。
@crhodes嗨。谢谢你的回答,但我担心错误仍然存在。现在我获得UserProfile__universidad KeyError:S – Audoen 2014-09-25 15:06:53
考虑到您希望所有字段都使用'UserProfile' – crhodes 2014-09-25 16:56:08