亚雷菲尔德因 Django

y0u0uwnf  于 2023-04-13  发布在  Go
关注(0)|答案(1)|浏览(88)

我的代码:

pagerange_str_array = ArrayField(models.CharField(max_length=10,
                                 blank=True, default=list()))

文档示例:https://docs.djangoproject.com/en/2.0/ref/contrib/postgres/fields/

board = ArrayField(
    ArrayField(
        models.CharField(max_length=10, blank=True),
        size=8,
    ),
    size=8,
)

docs -大小:这是一个可选参数。
错误信息:

DETAIL: Array value must start with "{" or dimension information.

但这些都不起作用:default={}、“{}”或''}它们都得到相同的错误消息。
docs:如果你给予字段一个默认值,确保它是一个可调用的,比如list(对于空的默认值)或者一个返回列表的可调用的(比如一个函数)
但这些也都不起作用:default=list,list(). null=True(我的原始代码)也不起作用。
所有这些例子都给予了相同的错误。我在网上看到过非Django的解决方案,但是什么是在Django中工作的代码示例?!谢谢。

wpx232ag

wpx232ag1#

在你的例子中,你正在谈论1-dim数组,它应该是这样的smth:

board = ArrayField(
    ArrayField(
        models.CharField(max_length=10, blank=True),
        size=8,
    ),
    size=1,
)

所以在你的情况下smth像:

pagerange_str_array = ArrayField(
    ArrayField(
        models.CharField(max_length=10, blank=True)
    ),
    size=1
)

相关问题