2009-11-24 47 views
0

我正在使用django应用程序django标记,我试图过滤掉某些标记以进行简单的标记搜索。如何使用django-tagging过滤标签?

变量'tag'是我正在搜索的某个标签的文本。 'Widget'是与标签关联的模型。

tags = Tag.objects.usage_for_model(Widget, counts=True, filters=dict(tags__icontains=tag)) 

上面的代码有点类似于作品。它返回一个包含标签的标签列表,但它也返回与使用该标签的小部件关联的其他标签。

例如,我有一个小部件:A和A有标签:django,python,mysql。 如果我做'Django的一个简单的搜索:

tags = Tag.objects.usage_for_model(Widget, counts=True, filters=dict(tags__icontains='django')) 

标签将返回此列表:[(标签:Django的),标签(Tag:蟒蛇),标签(Tag:MySQL的)

我只想要它返回:[(Tag:django)]

我该怎么做?

回答

4

比从未更好的迟到?

djangoTag = Tag.objects.get(name='django') 
djangoWidgets = TaggedItem.objects.get_union_by_model(Widget, djangoTag)