[英]Django-taggit adding new tags to an object?
我的models.py
class X(models.Model):
...
tags = TaggableManager()
如何将标签添加到对象。 如果我做:
x = X.objects.get(pk = 123)
x.tags.add( "sample_tag" )
如果先前已经创建了具有相同名称的标签(即上述情况下为“ sample_tag”),则它将添加两次标签。 现在,当我检索标签时:
>>> x.tags.all()
>>> [<Tag: sampletag>, <Tag: Sample_tag>]
如何解决这个问题。 我只想添加一个新标签,前提是它以前没有创建过,如果创建了,只需将新对象引用到该标签?
django-taggit完全可以满足您的要求,但在您的情况下,sampletag!= Sample_tag会创建另一个Tag实例。
>>> i.tags.all()
[]
>>> i.tags.add("test")
>>> i.tags.all()
[<Tag: test>]
>>> i.tags.add("test")
>>> i.tags.all()
[<Tag: test>]
>>>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.