私はdjango-taggitを使ってToDoリストアプリの項目にタグをつけています。設定するカウント値を追加する
私はそれを読むことができるように、各タグに関連するアクションの数とともに、各タグの一覧を表示しようとしている:Aが1つの項目、タグBはなど、3を持ってい
Tag A (1)
Tag B (3)
Tag C (2)
タグ
django-taggitに論理フィールドを追加しました。だから今私はこのようなタグのリストを取得しています:
visible_tags = Tag.objects.filter(visible=True).order_by('name')
hidden_tags = Tag.objects.filter(visible=False).order_by('name')
私はこのような項目(アクション)の数を取得することができます:今、私はvisible_tagsにこれらのカウントを添付したい
for tag in visible_tags:
print tag
print Action.objects.filter(tags__name__in=[tag]).count()
を私はこのようなテンプレートでそれらを反復することができるようにと設定hidden_tags:
{% for tag in visible_tags %}
{{ tag }} ({{ tag.count }})<br>
{% endfor %}
私はvisible_tags内およびhidden_tags内の各タグに.count値を添付することができますどのように?私は各セットのすべてのタグを反復処理しなければならないと思いますか?
私が考えたものだが、私は、凝集を考えていませんdjango-taggitで動作しますか? http://django-taggit.readthedocs.org/ja/latest/api.html#aggregation – JamesO
可能性があります。文書化された問題は、反対の関係、すなわち、OPが「Action」:「Action.objects.annotate(Count( 'tags'))」でタグを数えたい場合に発生します。 –