我试着添加一些像例子中的数组
tags = ArrayField(models.CharField(max_length=200),default=list)
我得到这个错误:
django.db.utils.DataError: malformed array literal: ""
DETAIL: Array value must start with "{" or dimension information.
使用postgresql_psycopg2
...
我试着添加一些像例子中的数组
tags = ArrayField(models.CharField(max_length=200),default=list)
我得到这个错误:
django.db.utils.DataError: malformed array literal: ""
DETAIL: Array value must start with "{" or dimension information.
使用postgresql_psycopg2
...
3条答案
按热度按时间zdwk9cvp1#
我遇到了同样的错误,我认为关键是删除失败的迁移,正如@nullable指出的那样。
我试过:
在删除失败的迁移后,我能够
makemigrations
和migrate
。似乎没有必要指定size
、blank
或null
。文件参考
顺便说一句,在你的数据库中有一个名为 django_migrations 的表,你可以在那里找到最后一次成功的迁移。
gdx19jrr2#
删除旧迁移后,重新执行
对我很有效
hsgswve43#
如果你正在将一种类型的字段转换为另一种类型的字段,我认为问题在于Django无法迁移以前的默认值字段或任何以前的值字段。
我的解决方案(因为我的字段不重要)是删除该字段,进行迁移以删除它,然后用
ArrayField
类型带回该字段,然后进行迁移。现在一切似乎都在工作。