Django taggit self.tags.add() в не работает в django
Я использую djagno-taggit. Я хочу добавлять данные других полей автоматически при сохранении таблицы данных.
models.py
class resource(models.Model):
title=models.CharField(max_length=100)
size=models.CharField( max_length=20, default="")
desc=models.TextField(default="")
file=models.FileField(default="", blank=True)
url= models.URLField(max_length=200, blank=True)
varient=models.CharField(max_length=100, default="")
Brand = models.ForeignKey(brand,on_delete=models.CASCADE, default="")
Model = models.ForeignKey(model,on_delete=models.CASCADE, default="")
Categories = models.ForeignKey(category,on_delete=models.CASCADE, default="")
update_at=models.DateField(auto_now=True)
slug=models.SlugField(default="", unique=True, blank=True)
tags_char=models.TextField( blank=True)
Tags = TaggableManager(blank=True)
def save(self, *args, **kwargs):
getlast=resource.objects.all().last()
getid=getlast.id
print(getid)
newid=int(getid)+1
if not self.pk:
self.pk=newid
self.tags_char= self.desc+","+self.size
ans=[self.title ,self.desc,self.size]
self.Tags.add(*ans)
print(self.Tags.all())
for tag in self.tags_char.split(','):
print(tag)
super(resource, self).save(*args, **kwargs)
Сначала я получаю pk для текущих данных и пытаюсь сохранить список, который имеет те же поля данных в полях Tags. Это работает хорошо, когда я печатаю Tagsafter adding и получаю следующий результат в терминале, когда я
print(self.Tags.all())
результат в терминале:
<QuerySet [<Tag: tagSize>, <Tag: tagTitle>, <Tag: tagDescription>]>
Но когда я открываю его в таблице данных модели admin, то у меня поля Tags пустые!!! Есть решение?