Python 在Django中将字符字段更改为数组字段时出错
我正在尝试更改django模型中现有的CharField(它还允许null,并且当前在db中包含null值) 现在我试图将其更改为数组字符字段,但它抛出以下错误 django.db.utils.IntegrityError:列“标记”包含空值 从 到Python 在Django中将字符字段更改为数组字段时出错,python,python-3.x,django,django-models,django-rest-framework,Python,Python 3.x,Django,Django Models,Django Rest Framework,我正在尝试更改django模型中现有的CharField(它还允许null,并且当前在db中包含null值) 现在我试图将其更改为数组字符字段,但它抛出以下错误 django.db.utils.IntegrityError:列“标记”包含空值 从 到 在运行“迁移”之前,我选择了选项2。在您选择的选项2中,要求您自己选择默认值,对吗 将默认属性添加到模型的字段中。现有的空值将转换为该值,例如: tags = ArrayField(models.CharField(max_length=255,
在运行“迁移”之前,我选择了选项2。在您选择的选项2中,要求您自己选择默认值,对吗 将默认属性添加到模型的字段中。现有的空值将转换为该值,例如:
tags = ArrayField(models.CharField(max_length=255, blank=True, null=True, default=[]))
尝试了上面的代码,但在运行迁移时仍然得到相同的错误ArrayField需要为空:
ArrayField(models.CharField(max_length=255,blank=True,null=True),null=True,blank=True)
@tomhamiltonsubber谢谢,但现在我遇到了数据问题,得到了这个错误“django.db.utils.DataError:数组文字格式错误”,因为该字段已经有一些字符值
tags = ArrayField(models.CharField(max_length=255, blank=True, null=True))
tags = ArrayField(models.CharField(max_length=255, blank=True, null=True, default=[]))