如何解决如何在Django中检索超级用户的名称?
users = User.objects.all()
post.author = users.name
考虑到User
是超级用户信息存储在数据库中的位置。它会引发错误,如下所示:
'Query Set' object has no attribute 'name'
解决方法
from django.contrib.auth.models import User
superusers = User.objects.filter(is_superuser=True)
superuser_names = [user.username for user in superusers]
,
如果您认为超级用户已登录,则可以通过以下方式检查用户名:
if request.user.is_superuser:
name = request.user.username
else:
name = None
,
user = User.objects.all()
返回包含数据库中所有用户的queryset
,因此不能在数据库上使用.name
。
据我所知,您要使用username
中的user
,因此如果要使用user.username
,则应使用user.first_name
,这仅适用于单个对象不在查询集中。您可以使用用户user.is_superuser
来查找该用户是否为超级用户。
这会有所帮助-> Read More in Docs
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。