【问题标题】:QuerySet object has no attribute userQuerySet 对象没有属性 user
【发布时间】:2020-03-07 21:56:20
【问题描述】:

我在尝试获取我的所有个人资料用户列表时遇到了一点问题。当我尝试下面的代码时,Django 说:QuerySet 对象没有属性用户

class Profile(models.Model):
    user = models.OneToOneField(settings.Auth)

def home(request):
    p = Profile.objects.exclude(user=request.user)
    u = p.user

但是当我在最后添加 first() 时,它只显示第一个用户。所有用户的列表是我想要的。

def home(request):
    p = Profile.objects.exclude(user=request.user).first() 
    u = p.user

【问题讨论】:

    标签: python django


    【解决方案1】:

    您遇到错误是因为您试图从此处u = p.user 的查询集中获取属性。 例如,您只能从查询集 p[0].user 的项目中获取属性。

    如果您想获取用户列表,您可以直接过滤User 模型。

    from django.contrib.auth.models import User
    
    User.objects.exclude(pk=request.user.id)
    

    【讨论】:

    • @weAreStarDust...你是对的,但我该如何通过这个错误?
    • 谢谢,但为什么这项工作只获得配置文件中的第一个用户: def home(request): p = Profile.objects.exclude(user=request.user).first() u = p.user
    猜你喜欢
    • 2014-12-29
    • 1970-01-01
    • 2020-10-31
    • 2016-10-01
    • 2021-06-12
    • 2021-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多