Учитывая следующее соотношение:
class LicenseRequest:
license_type = models.ForeignKey(LicenseType)
created_at = models.DateField(default=now, editable=False)
class LicenseType:
name = models.CharField(max_length=100)
value = models.CharField(max_length=3, unique=True)
Я хочу посчитать, сколько запросов было создано для каждого типа лицензии. Однако, поскольку я генерирую графику, я должен включить 0 (ноль) для типов лицензий без какого-либо запроса на лицензию в этот конкретный период.
Я пытался сделать то, что было предложено здесь , но это не сработало. Я могу получить счет только по тем типам лицензий, которые имеют более одного запроса лицензии.
qs = LicenseType.objects.filter(
Q(licenserequest__created_at__range=(start_date, end_date)) | Q(licenserequest__isnull=True)
).annotate(rel_count=Count('licenserequest__id'))
Я мог бы найти другой способ достичь этой цели, но мне было интересно, смогу ли я сделать это с помощью аннотации.
Я использую django1.11.15 .