Django JSONField

时间:2017-07-11 17:07:55

标签: python json django postgresql

我们一直在使用jsonfield库中的JSONField,但现在我们要使用原生PostgreSQL JSONField。所以我想知道是否可以更改现有模型的字段类型,保留旧字段名称而不丢失任何数据。感谢。

2 个答案:

答案 0 :(得分:2)

您要做的是data migration

  1. 保留现有的jsonfield并添加新的PostreSQL JSONField
  2. 生成data migration,它会遍历每个记录,将数据从旧字段迁移到新字段。
  3. 运行迁移后,您可以弃用旧字段并将其删除而不会丢失任何数据。
  4. 参考

    Django Data Migrations

答案 1 :(得分:0)

是的,你可以改变字段'类型和名称而不会丢失数据。 您只需在每次更改模型中的内容时运行makemigrationsmigrate