0
我试图使用django-taggit作为标签模型。django-taggit从表格中获取标签字符串
model.py
class Product(models.Model):
product_no = models.IntegerField(primary_key=True)
...
tags = TaggableManager(blank=True)
views.py
def action(request):
product = Product()
user = User.objects.get(id=request.user.id)
product.seller_username = user
...
product.save()
tag_list = taggit.utils._parse_tags(request.POST['tags'])
product.tags.add(*tag_list)
当我打电话方法product.tags.add(),我得到一个错误说
产品对象需要有主键值才能访问 其标签
我发现许多解决方案都告诉我在product.tags.add()之前放置product.save()以在访问多对多字段之前使pk可用。 我试过了,仍然是错误。
注意:save()方法正常工作。它在产品列表中创建新对象,并可以在管理界面中查看。
您是否在保存之前设置了'product.product_no'的值? – solarissmoke
我没有设置它,但是因为它是pk字段,它应该通过save()方法自动设置。 –