Я использую Django и Python 3.7.У меня есть эти две модели, связанные друг с другом через внешний ключ ...
class Website(models.Model):
objects = WebsiteManager()
path = models.CharField(max_length=100)
class Article(models.Model):
website = models.ForeignKey(Website, on_delete=models.CASCADE, related_name='articlesite')
title = models.TextField(default='', null=False)
url = models.TextField(default='', null=False)
created_on = models.DateTimeField(db_index=True, default=datetime.now)
Я хочу написать запрос Django, который возвращает веб-сайты, с которыми связано более 100 статей.В PostGres я могу написать этот запрос
select w.id, count(*) FROM website w, article a where w.id = a.website_id group by w.id;
, но мне неясно, как это сделать с помощью запроса Django.Как мне написать запрос, где условие, если функция COUNT?
Редактировать:
Я изменил свой запрос, чтобы добавить условие ...
qset = Website.objects.annotate(articlesite_count=Count('articlesite')).filter(
articlesite__edited_date__null=True,
articlesite_count__gte=100)
но теперь это приводит к ошибке
Unsupported lookup 'null' for DateTimeField or join on the field not permitted.