Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Django中将字符字段更改为数组字段时出错_Python_Python 3.x_Django_Django Models_Django Rest Framework - Fatal编程技术网

Python 在Django中将字符字段更改为数组字段时出错

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,

我正在尝试更改django模型中现有的CharField(它还允许null,并且当前在db中包含null值)

现在我试图将其更改为数组字符字段,但它抛出以下错误

django.db.utils.IntegrityError:列“标记”包含空值


在运行“迁移”之前,我选择了选项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=[]))