python - 在 Django 中将 Char 字段更改为数组字段时出错
问题描述
我正在尝试更改 django 模型中的现有 CharField(它还允许 null 并且当前在 db 中包含 null 值)
现在我正在尝试将其更改为 Array Char Field,但它会引发以下错误
“django.db.utils.IntegrityError:列“标签”包含空值”
从
tags= models.CharField(max_length=255, blank=True, null=True)
至
tags = ArrayField(models.CharField(max_length=255, blank=True, null=True))
我在运行迁移之前选择了选项 2
解决方案
在您选择的这个选项 2 中,您被要求自己选择一个默认值,对吧?
将默认属性添加到模型的字段。现有的 null 值将转换为该值,例如:
tags = ArrayField(models.CharField(max_length=255, blank=True, null=True, default=[]))
推荐阅读
- javascript - 如何在 React Native 中制作透明状态栏
- reactjs - div 内容映射不同的组件
- nginx - 如何使用 nginx 删除未配置的子域而无需硬编码?
- python - 如何在没有互联网连接的服务器上手动安装 python 包女服务员?
- javascript - 使用 array.filter 方法我如何检查数组对象中的值并从数组的同一对象返回不同的值?
- javascript - 如何打印 json 对象数组以将所有值打印为类别和子类别
- django - 作为 POST 请求发送的有效负载的最大大小(Django)
- python - 如何匹配和替换 Pandas Dataframe 中不同列中的值?
- ruby-on-rails - 如何在设计中为rails中的不同模型指定路径
- laravel - 关系 laravel:统计数据