簡體   English   中英

django-taggit從表單獲取標簽字符串

[英]django-taggit obtain tags string from form

我試圖使用django-taggit作為標記模型。

模型

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.save()放在product.tags.add()之前,以使pk在訪問多對多字段之前可用。 我嘗試過,仍然是錯誤。

注意:save()方法可以正常工作。 它會在“產品”列表中創建新對象,並且可以在管理界面中看到。

看來我必須改變

product_no = models.IntegerField(primary_key=True)

product_no = models.AutoField(primary_key=True)

它是固定的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM