/ / Excluir contagem de itens anotados no Django Query - python, django

Excluir contagem de itens de anotação no Django Query - python, django

Estou consultando o banco de dados para obter uma lista de objetos e usando annotate () para contar quantos itens associados eles têm com ele.

Eu gostaria de retornar apenas objetos com um associado item contagem acima de 5.

lists = List.objects.exclude(picture_url="").exclude(picture_url__icontains="google").select_related("city","city__country", "user", "user__profile").annotate(items_added=Count("item"))[:10]

Respostas:

4 para resposta № 1
lists = List.objects.exclude(picture_url="") 
.exclude(picture_url__icontains="google") 
.select_related("city","city__country", "user", "user__profile") 
.annotate(items_added=Count("item")) 
.filter(items_added__gt=5)[:10]

Diferente de agregate (), annotate () não é um terminalcláusula. A saída de a cláusula annotate () é um QuerySet; este QuerySet pode ser modificado usando qualquer outra operação QuerySet, incluindo filter (), order_by ou até chamadas adicionais para anotar ().