Невозможно добавить начальные/автоматические теги тегов с помощью tagulous по сигналу post-save
Я не могу добавить начальные/автоматические теги тегов с помощью tagulous по сигналу post-save. Я работаю над проектом, который содержит марки смартфонов, модели и файлы их конкретных прошивок.
Я хочу сделать следующее: при публикации таблицы я хочу скопировать название бренда название модели и название файла в поле tags вместе с предустановленными тегами. Для этого я использую post save signals из django и он выводит следующее:
Я пытаюсь добавить начальные теги и также хочу скопировать поля title model brand в теги, но код выдает ошибку
def tag_set(sender, instance,*arg, **kwargs):
ans= array_tag(instance)
instance.Tags.add(ans)
post_save.connect(tag_set, sender=resource)
def array_tag(instance):
return [instance.title ,instance.desc,instance.size, instance.Brand.title ,instance.Model.title ,instance.Categories.title]
Ошибка
'list' object has no attribute 'pk'
ниже приведены настройки кода, которые я использовал
Models.py
class Skill(tagulous.models.TagTreeModel):
class TagMeta:
initial = [
"Python/Django",
"Python/Flask",
"JavaScript/JQuery",
"JavaScript/Angular.js",
"Linux/nginx",
"Linux/uwsgi",]
space_delimiter = False
autocomplete_view = "resource_skills_autocomplete"
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)
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(max_length=200, null=True,blank=True)
Tags = tagulous.models.TagField( to=Skill, help_text="This field does not split on spaces" )
Settings.py
SERIALIZATION_MODULES = {
'xml': 'tagulous.serializers.xml_serializer',
'json': 'tagulous.serializers.json',
'python': 'tagulous.serializers.python',
'yaml': 'tagulous.serializers.pyyaml',
}
Admin.py
class PersonAdmin(admin.ModelAdmin):
list_display = ("title","size","Brand", "Model", "Categories","Tag" )
tagulous.admin.register(models.resource, PersonAdmin)
tagulous.admin.register(models.Skill)
Forms.py
class PersonForm(forms.ModelForm):
class Meta:
fields = ["title", "Tags"]
model = models.resource