如何在Django模型中返回arrayfield?

时间:2019-03-27 11:29:35

标签: django

这是我的模特。py

class Product(models.Model):
    product = ArrayField(ArrayField(models.CharField(max_length=200), blank=True))
 def __str__(self):
         return self.product

但是我遇到了类似的错误:

  在/ admin / ordering / product / add /下的

TypeError    str 返回了非字符串(类型列表)

2 个答案:

答案 0 :(得分:0)

在模型__str__()的{​​{1}}方法中,self.product返回名称列表。

Product

您可以将 self.product 手动转换为字符串,也可以替换为以下字符串。

class Product(models.Model):
    ...
    def __str__(self):
         return self.product  # This returns list of names 

答案 1 :(得分:0)

只需将您的产品数组转换为字符串。为此,您可以将强制转换产品数组键入字符串

class Product(models.Model):
    product = ArrayField(ArrayField(models.CharField(max_length=200), blank=True))
 def __str__(self):
         return str(self.product)

str(anything)会将任何python对象转换为其字符串表示形式