python - QuerySet 对象没有属性 user
问题描述
我在尝试获取所有个人资料用户的列表时遇到了一点问题。当我尝试下面的代码时,Django 说:QuerySet object has no attribute user
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
解决方案
你得到了错误,因为你试图从这里的查询集中获取属性u = p.user
。例如,您只能从查询集的项目中获取属性p[0].user
。
如果您想获取用户列表,您可以直接过滤User
模型。
from django.contrib.auth.models import User
User.objects.exclude(pk=request.user.id)
推荐阅读
- python - Datetime 在 00:00:00 自动转换日期
- c# - 从 MVVM 中的 UserControl 内部导航 ContentControl
- javascript - VideoJS player.autoCaption 不是一个函数
- c++ - 在opencv和c ++中合并重叠边界框的函数问题
- nearley - 如何将回车添加到近乎可能的空白值?
- python - 如何使用 plotly express 在地图框中绘制线串的 GeoJSON 特征集合?
- apiblueprint - 养蜂场身份验证描述不起作用?
- node.js - 如何返回子文档的计数数组猫鼬
- python - 使用 python api ibm_db 连接到 IBM DB2 on Cloud
- python - 由于尺寸不同,如何将 ndarray 转换为 EagerTensor?