2

我正在使用 django-taggit。我正在标记操作项和信息项。我想列出所有有信息项的标签。我最初写道:

Tag.objects.filter(info_item__name__isnull=False).annotate(info_item_count=Count('info_item'))

但这是返回一些操作项。我如何重写查询以便过滤标签以附加信息项?

4

1 回答 1

3

假设您的 info_item 模型是 InfoItem,然后尝试

from django.contrib.contenttypes.models import ContentType  
Tag.objects.filter(
    taggit_taggeditem_items__content_type=ContentType.objects.get_for_model(InfoItem), 
    info_item__name__isnull=False).annotate(info_item_count=Count('info_item'))
于 2012-04-07T04:52:59.947 回答