Не предназначайтесь для дочернего модельного класса - PullRequest
0 голосов
/ 11 мая 2018

Итак, я пытаюсь создать набор запросов Post, исключая AdvertisePost.

Вот мои модели:

class Post(models.Model):
...

class AdvertisePost(Post):
   ...

Мой текущий запрос: posts = Post.objects.all() предназначен для обеих моделей.Однако я хочу нацелиться только на модель Post, а не AdvertisePost - как я могу это сделать?

1 Ответ

0 голосов
/ 11 мая 2018

Вы можете сделать:

adv_posts_ids = AdvertisePosts.objects.all().values_list('id', flat=True)
Post.objects.exclude(id__in=adv_posts_ids)

Это эквивалент SQL-запроса "not in"

Надеюсь, это то, что вы ищете:)

...