0

在 Django 中,使用 django-tagging 应用程序,我希望在保存对象时将包含在不是 TagField 的字段(例如authors,在本例中)中的项目添加到显式提供的标签列表中.

class Publication(models.Model):
    title    = models.CharField(max_length=200)
    authors  = models.CharField(max_length=200)
    tags     = TagField()

如果提交的作者是“John, Bob, Mary”并且提交了标签“cooking, fun”,我如何让最终标签设置为“John, Bob, Mary, cooking, fun”?

我尝试向 Publication 类添加自定义保存功能,但我认为我做的不对。

def save(self, *args, **kwargs):
    super(Publication, self).save(*args, **kwargs)
    for author in parse_tag_input(self.authors):
        Tag.objects.add_tag(self, slugify(author))
    super(Publication, self).save(*args, **kwargs)

如何添加这些额外的标签?

4

1 回答 1

0

我认为第二个 super(...).save(...) 是错误的。你根据文档做得很好

于 2011-05-20T07:14:28.870 回答