gpt4 book ai didi

python - django-allauth - RESTful API 返回属于用户的所有电子邮件地址

转载 作者:行者123 更新时间:2023-12-01 03:57:57 25 4
gpt4 key购买 nike

我正在尝试创建序列化类,该类将返回属于特定用户的所有电子邮件地址,但我不知道如何实现这一点,因为在 django-allauth 中,emailaddress_set 链接到 User 模型。我想要这个的原因很明确 - 我想显示一个 AJAX 表单(我正在使用 AngularJS),其中可以更改电子邮件地址。
回到主题 - 我正在考虑这样的事情,但显然这是行不通的:

from django.contrib.auth import get_user_model
from rest_framework import serializers

UserModel = get_user_model()

class UserSerializer(serializers.ModelSerializer):
class Meta:
model = UserModel
fields = '__all__'

class EmailSerializer(serializers.ModelSerializer):
class Meta:
model = UserModel.emailadress_set
fields = '__all__'

这就是 django-allauth 中电子邮件地址类的组成方式:

class EmailAddress(models.Model):

user = models.ForeignKey(allauth_app_settings.USER_MODEL,
verbose_name=_('user'))
email = models.EmailField(unique=app_settings.UNIQUE_EMAIL,
max_length=254,
verbose_name=_('e-mail address'))
verified = models.BooleanField(verbose_name=_('verified'), default=False)
primary = models.BooleanField(verbose_name=_('primary'), default=False)

objects = EmailAddressManager()

最佳答案

希望这会起作用

class EmailSerializer(serializers.ModelSerializer):
user_info = serializers.RelatedField(source='usermodel', read_only=True)

class Meta:
model = EmailAddress
fields = ('id', 'email', 'user_info')

关于python - django-allauth - RESTful API 返回属于用户的所有电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37109788/

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