【问题标题】:Taggit gets wrong tagsTaggit 得到错误的标签
【发布时间】:2013-08-22 17:25:58
【问题描述】:

我有一个带有类别外键的工作模型。我在做 -->

drawingTags = Tag.objects.filter(Q(work__category__slug_en = 'drawing') |
                                 Q(work__category__slug_en = 'illustration') |
                                 Q(work__category__slug_en = 'sketch') |
                                 Q(work__category__slug_en = 'storyboard'))

我也得到不属于图纸的标签?我做错了吗?

-- 编辑--

我做了一个小测试。我有两个名为 blog 和 web 的应用程序。 在博客中我有“入门”模型,在网络中我有“工作”模型。这两个模型都有名为标签的 TaggableManager 字段......

当我想把分类在绘图下的作品的标签拿来做时-->

drawingTags = Tag.objects.filter( work__in = drawings ).distinct()

如果有一个 id 为 1 的绘图并且条目模型有一个 id 为 1 的条目。那么我得到两个项目的标签。我觉得这里有问题但我不知道如何解决这个难题?

【问题讨论】:

    标签: django-taggit


    【解决方案1】:

    解决方案:

    from django.contrib.contenttypes.models import ContentType  
    
    contentType = ContentType.objects.get_for_model(Work)
    drawingTags =Tag.objects.filter(taggit_taggeditem_items__content_type=contentType, 
                                            work__in = drawings ).distinct()
    

    【讨论】:

      猜你喜欢
      • 2017-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-02
      • 2012-10-05
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      相关资源
      最近更新 更多