【问题标题】:How to get the user email from auth.User when filterring a field in UserProfile?过滤UserProfile中的字段时如何从auth.User获取用户电子邮件?
【发布时间】:2011-07-05 11:51:10
【问题描述】:

我有一种情况,我需要查询 UserProfile 模型,但需要从 auth.User 模型中为每个用户记录获取一个字段:

groups_list = User.objects.filter(status__in=group_list).values_list('email', flat=True)

过滤器中的“状态”来自 UserProfile 模型。

谁能帮我解决这个问题?

谢谢,

埃雷兹

【问题讨论】:

    标签: python django django-models django-views django-queryset


    【解决方案1】:

    我认为this 是您所需要的。 因此它会是这样的:

    groups_list = User.objects.filter(userprofile__status__in=group_list).values_list('email',    flat=True)
    

    【讨论】:

    • 如此简单,这是我在 python/django 中有时会丢失的“MAGIC”部分。谢谢:-)
    【解决方案2】:

    在您的UserProfile 模型中,确保User 的外键设置了related_name='profile'。然后,您可以执行以下操作:

    groups_list = User.objects.filter(profile__status__in=group_list).values_list('email', flat=True)
    

    【讨论】:

    • 谢谢你的回答,但另一个要简单得多。但非常感谢你:-)
    猜你喜欢
    • 2019-09-20
    • 1970-01-01
    • 2014-09-11
    • 2012-02-09
    • 1970-01-01
    • 2015-11-08
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    相关资源
    最近更新 更多