我有以下模型:
class APC(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True, related_name='apc', on_delete=models.SET_NULL)
type= models.CharField(choices=TYPE_CHOICES, max_length=5, blank=True, null=True)
我想要获取具有两种特定类型之一的 APC 对象,并且用户不是员工。
我从以下开始:
apcs = APC.objects.filter(
~Q(user is staff),
Q(type=TYPE_CHOICES_A) | Q(type=TYPE_CHOICES_B)
)
最佳答案
尝试在没有 Q 的情况下完成:
apcs = APC.objects.filter(user__is_staff=False, type__in=(TYPE_CHOICES_A, TYPE_CHOICES_B))
关于django - 按用户过滤不是在另一个模型查询集中使用 Q 的人员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52126176/