список моделей с особыми условиями - PullRequest
0 голосов
/ 24 июня 2018

У меня есть три модели

class User(models.Model):
    username = models.charField()

class Base(models.Model):
    serialNum = models.CharFields()
    is_active = models.BooleanFields()

class User_Base(models.model):
    user = models.ForeignKey(User, related_name='user_base', blank=True, null=True, on_delete=models.SET_NULL)
    base = models.ForeignKey(Base, related_name='user_base', blank=True, null=True, on_delete=models.SET_NULL)
    status = models.BooleanField()

Я ищу список баз, которые base.is_active = True и не существуют в User_Base таблицы, и если некоторые базы находятся в User_Base , их status = False .

Как определитьмой запрос?

1 Ответ

0 голосов
/ 24 июня 2018

Я нашел это

list = Base.objects.filter((Q(user_base__isnull = True) | Q(user_base__isnull = False, user_base__status = False)),
                               is_active = True
                               )
...