所以在 Django 文档中,在 Postgresql 上创建新字段时它说(Full description):
... it’s recommended you always create new columns with
null=True
, as this way they will be added immediately.
如果我想创建一个像这样的 ArrayField 怎么办:
tags = ArrayField(models.CharField(max_length=255, blank=True, default=''), default=list, null=True)
我是否也应该将 null=True
传递给 ArrayField
中的 CharField
?
最佳答案
我认为在内部类型上设置 null=True
不会给您带来任何好处。您引用的文档中的注释仅适用于列本身,因此只要 ArrayField
可为空,数据库就不必执行完整的表重写。
如果您允许内部类型为 null,您将不得不在代码中处理它,这可能不是您想要的。
关于python - Django ArrayField null=使用 Postgresql 的真正迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36617145/