标签:
例如下表UserVerifyCode,自定义了idUser这个key
修改成如下,去掉idUer的主键属性
使用python manage.py makemigrations,id是新增列,不能为空,所以必须输入默认值
id列我们的都知道,实际上不需要默认值,这时候需要去makemigrations文件夹下,修改合并文件
文件目录
删除default=0, 代码
Step4 尝试migrate
报错有多个主键
分析makemigrations文件
发现是先添加id主键,再alter原来的主键idUser
尝试交换顺序重新migrate,出现如下提示,是makemigrations执行migrate时部分成功
前面表创建成功,但是主键更换失败,删除userlog表,重新migrate
Step7
drop userLog表之后再migrate
migrate成功
主键更新成功
【Django数据库】如何将一个表自定义的key列还原成id列作为key
标签:
原文地址:http://www.cnblogs.com/inns/p/5516503.html