4

django-taggitを使用して、to do レコードにタグを付けています。

class Action(models.Model):
    name = models.CharField("Action Name", max_length=200)
    complete = models.BooleanField(default=False, verbose_name="Complete?")

    tags = TaggableManager()

タスクに関連付けられているタグまで、レコードの正確なコピーを作成しようとしています。

new_obj = deepcopy(self)
new_obj.id = None
new_obj.save()

このコードを実行した後、関連するタグがないことを除いて、コピーは正確です。すべてのタグを「self」から new_obj にコピーするにはどうすればよいですか?

4

1 に答える 1

4

オブジェクトにタグを追加する代わりに:

new_obj.tags.add(tag)

新しいオブジェクトをタグに追加しました:

for tag in self.tags.all():
    tag_object = TaggedItem(content_object = new_obj, tag = tag)
    tag_object.save()
于 2012-09-21T02:23:04.267 に答える