重命名Django模型字段

时间:2016-06-21 10:01:49

标签: django migration

我试图将我的一个模型字段(单位)从FloatField转换为IntegerField。

我的策略是:

  1. 添加' _units' field(IntegerField)
  2. 从'单位复制数据'到' _units'
  3. 删除'单位'
  4. 重命名' _units'作为'单位'
  5. 步骤1 - 3的迁移运行正常但在步骤4我运行测试时出错:

      

    django.db.utils.OperationalError:没有这样的列:myapp_mymodel._units

    对于此步骤,我进行了空迁移,然后添加到操作中;

    migrations.RenameField('MyModel', '_units', 'units')  
    

    我哪里错了?

1 个答案:

答案 0 :(得分:5)

使用migrations.AlterField它将完成所有4个步骤。