gpt4 book ai didi

python - django rest framework 从外键关系中获取数据

转载 作者:太空狗 更新时间:2023-10-30 00:27:47 25 4
gpt4 key购买 nike

我使用 Django auth user 创建了一个用户配置文件,所以我想使用 UserProfile 模型序列化程序获取用户名、电子邮件和电话,因此可以使用 Django rest 框架中的 ModelSerializer 从外键关系中获取数据。我没有从文档和谷歌获得任何有用的解决方案,请帮忙。

class UserProfile(models.Model):
user = models.ForeignKey(User,)
phone = models.CharField(max_length=15, blank=True)

class UserProfileSerializer(serializers.ModelSerializer):
class Meta:
model=UserProfile
fields = (phone,'user__username','user__email')

最佳答案

您需要在序列化程序中定义usernameemail 字段,并使用点分符号传递source 参数以遍历用户模型。

你需要做类似的事情:

class UserProfileSerializer(serializers.ModelSerializer):
username = serializers.CharField(source='user.username', read_only=True)
email = serializers.EmailField(source='user.email', read_only=True)

class Meta:
model=UserProfile
fields = (phone, username, email)

关于python - django rest framework 从外键关系中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32509815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com