擅长:python、mysql、java
<p>你的情况,据我所知,你想要两种不同型号的标签不同的基本系列。
考虑到我不是taggit的专家,所以我提出的解决方案可能有点过于复杂,但这是第一个通过查看源代码让我想起的解决方案。
您可以通过扩展TaggableManager使用的TaggableRel类并向limit_choices_to参数添加一个条件来实现:</p>
<p>扩展TaggableRel</p>
<pre><code>class CustomTaggableRel(TaggableRel):
def __init__(self, field, model_name):
super(TaggableRel, self ).__init__(field)
self.limit_choices_to = {'content_type': model_name}
</code></pre>
<p>然后按以下方式扩展TaggableManager:</p>
^{pr2}$
<p>比你的模特们:</p>
<pre><code>class PersonArchive(models.Model):
.
.
.
tags = CustomTaggableManager(model_name="PersonArchive")
</code></pre>
<p>这应该可以解决问题,没有尝试解决方案,我很快就写下来了,但这会让你走上正确的道路。在</p>