【发布时间】:2017-12-15 21:09:42
【问题描述】:
我们已经使用 jsonfield 库中的 JSONField 有一段时间了,但现在我们想使用原生的 PostgreSQL JSONField。所以我想知道是否可以更改现有模型的字段类型,保留旧字段名称并且不会丢失任何数据。谢谢。
【问题讨论】:
标签: python json django postgresql
我们已经使用 jsonfield 库中的 JSONField 有一段时间了,但现在我们想使用原生的 PostgreSQL JSONField。所以我想知道是否可以更改现有模型的字段类型,保留旧字段名称并且不会丢失任何数据。谢谢。
【问题讨论】:
标签: python json django postgresql
你想做的是data migration。
jsonfield 并添加新的PostreSQL JSONField。【讨论】:
是的,您可以在不丢失数据的情况下更改字段的类型和名称。
每次更改 models.py 中的内容时,您只需运行 makemigrations 和 migrate
【讨论】:
string 到 int)。
makemigrations 时)并且您必须回答 Yes/No ,以防他没有理解您的意思,您可以随时编辑迁移文件 2. 在这种情况下,可能会有错误,但不会丢失数据