【问题标题】:Item in the array did not validate: Select a valid choice. ["Acamedic" is not one of the available choices数组中的项目未验证:选择一个有效的选项。 [“Acamedic”不是可用的选择之一
【发布时间】:2021-10-15 23:11:15
【问题描述】:

我正在尝试将 CharField 与使用 postgres ArrayField 的选项一起使用。这是我的代码;

BOOK_CATEGORY = (
    ("Academic", "Academic"),
    ("Science Fiction", "Science Fiction"),
    ("For Student", "For Student"),
    ("Others", "Others"),
)
class Book(models.Model):
    category = ArrayField(models.CharField(max_length=100, choices=BOOK_CATEGORY), blank=True, null=True)

这是我尝试发布值时遇到的错误; ["Acamedic", "For Student", "Others"];

【问题讨论】:

  • 您发帖时使用的密钥的拼写与BOOK_CATEGORY 中的任何内容都不同。 'Acamedic' 是您发布的内容。
  • 你能用models.TextField吗? DB字段的数据类型是什么?

标签: django postgresql django-models django-rest-framework


【解决方案1】:

问题出在语法上。我将其发布为["Academic", "For Student", "Others"]。它应该类似于Academic,For Student,Others(注意:没有任何空格分隔不同的选项,没有括号,也没有引号)

【讨论】:

    猜你喜欢
    • 2019-01-14
    • 2021-01-25
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 1970-01-01
    • 1970-01-01
    • 2017-05-28
    • 1970-01-01
    相关资源
    最近更新 更多