문제

내가 사용하여 django-taggit 태그 항목에서 할 일 목록 응용 프로그램입니다.

내가 하려고 목록의 각 범주의 번호와 함께 작업과 관련된 각 태그 그래서 그것을 읽을 수 있습니다:

Tag A (1)
Tag B (3)
Tag C (2)

태그 추가 1 항목,태그 B 에는 3,etc.

추가 boolean 필드를 django-taggit.그래서 이제 나는 목록의 태그를 다음과 같다:

visible_tags = Tag.objects.filter(visible=True).order_by('name')
hidden_tags = Tag.objects.filter(visible=False).order_by('name')

나를 얻을 수 있는 항목의 개수를(활동)like this:

for tag in visible_tags:
    print tag
    print Action.objects.filter(tags__name__in=[tag]).count()

지금 내가 원하는 첨부하는 이러한 계산을 visible_tags 및 hidden_tags 설정할 수 있도록 반복이 그들에 템플릿은 다음과 같다:

{% for tag in visible_tags %}
    {{ tag }} ({{ tag.count }})<br>
{% endfor %}

어떻게 연결할 수 있습니다.카운트 값을 각 태그 내에서 visible_tags 에 hidden_tags? 나는 가정을 반복하는 모든 범주에서 각각합니다.

도움이 되었습니까?

해결책

특수효과를 사용: https://docs.djangoproject.com/en/dev/topics/db/aggregation/

from django.db.models import Count

Tag.objects.annotate(action_count=Count('action'))

(있을 수 있습을 조정하는 비트입니다.나는 추측에 관련된 이름에 대한 Action)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top