Python 不包括django中的两类用户
我在django中有一个应用程序,希望在我的视图中排除匿名用户和管理员用户以及具有标志超级用户的用户 我已经有了排除匿名用户的代码,但是如何将管理员用户放在这里呢 我的模型Python 不包括django中的两类用户,python,django,Python,Django,我在django中有一个应用程序,希望在我的视图中排除匿名用户和管理员用户以及具有标志超级用户的用户 我已经有了排除匿名用户的代码,但是如何将管理员用户放在这里呢 我的模型 class MyModel(models.Model): user = models.ForeignKey(User, blank=True, null=True) name = models.CharField(max_length=255, blank=True, null=True) 我的问题是: d
class MyModel(models.Model):
user = models.ForeignKey(User, blank=True, null=True)
name = models.CharField(max_length=255, blank=True, null=True)
我的问题是:
def get_queryset(self):
return User.objects.all().exclude(id=settings.ANONYMOUS_USER_ID)
只需添加“排除依据is_超级用户”字段:
只需添加“排除依据is_超级用户”字段:
您也可以使用Q来尝试这一点
您也可以使用Q来尝试这一点
所有管理员都有一个attribute is_staff=True
User.objects.all.excludeid=settings.ANONYMOUS\u User\u ID.excludeis\u staff=True所有管理员都有一个属性is\u staff=True User.objects.all.excludeid=settings.ANONYMOUS\u User\u ID.excludeis\u staff=True 。。。你可以指定你不想让它访问的人
。。。您可以指定您不希望它访问的用户。非常感谢。它在一种情况下有效。你能看看更新我的帖子吗?我需要从不同的模型中排除用户…使用MyModel.objects.excludeuser\uuuu id=settings.ANONYMOUS\u User\uu id.excludeuser\uu是\u superuser=True查询。非常感谢。它在一种情况下有效。你能看看更新我的帖子吗?我需要从不同的模型中排除用户…使用MyModel.objects.excludeuser\uuuu id=settings.ANONYMOUS\u User\u id.excludeuser\uu is\u superuser=True查询。
User.objects.all().exclude(id=settings.ANONYMOUS_USER_ID) \
.exclude(is_superuser=True)
from django.db.models import Q
User.objects.exclude(Q(id=settings.ANONYMOUS_USER_ID) | Q(is_superuser=True))
User.objects.all().exclude(id=)