我有一个带有电话号码字段的表格。我曾经有一个ADRC
,任何人都可以输入几乎任何内容,但是我使用Widget
这意味着我现在有一个小部件,允许用户选择国家代码,然后输入他的电话号码,并且所有验证都是自动的。但是,要使用此小部件,需要在模型中将self.display.start()
更改为CharField
。我需要做一些调整,但效果很好,因为两个字段都转换为VARCHAR(255)。但是,当我在测试环境上迁移时,电话字段中的所有旧值都被更改,并且所有与CharField
所需格式不符的值都被删除(或更确切地说,使其变得一文不值: 00336XXXXXXXX变成了+ NoneNone)。
我不想在生产环境中重现此行为。有没有一种方法可以编辑我的迁移,以便不更改表中已经存在的任何值?如果没有,我可以使用哪些调整来保留较旧的值?
为了简化我的问题,有没有办法告诉Django我想更改自己的架构,但是我希望列中的值保持不变?