【发布时间】:2016-03-07 11:59:30
【问题描述】:
我刚开始使用 django rest 框架,这可能是一个老问题,但到目前为止,我还没有在 SO 上找到任何正确的答案。
我想向 DRF 提供的现有用户模型添加一些额外的配置文件字段。阅读文档后,我选择创建一个新的 CustomUser 模型并通过外键将其与默认的 User 模型相关联。
当我尝试序列化 CustomUser 模型时,问题出现了。我希望json是这样的:
{
"username" : "from_default_user_model",
"extra_field" : "from_custom_user_model"
}
但是通过使用如下嵌套的序列化器,我得到了嵌套的 json 表示。
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('username',)
class CustomUserSerializer(serializers.ModelSerializer):
user = UserSerializer()
class Meta:
model = CustomUser
fields = ('extra_field',)
嵌套的看起来像这样:
{
"username" : "from_default_user_model",
"user" :
{
"extra_field" : "from_custom_user_model"
}
}
我想要的是某种类似于两个表之间的数据库连接,它只生成一个普通表,而不是嵌套表。我怎样才能做到这一点?
【问题讨论】:
标签: json django django-rest-framework