Python Django不正确地期望id列

Python Django不正确地期望id列,python,mysql,django,primary-key,Python,Mysql,Django,Primary Key,我正在使用Django中现有的SQL数据库。由于某种原因,这些表从来没有被赋予主键,所以我只是浏览一下并给它们分配主键。在其中一个模型中,我使用primary\u key=True将现有的唯一索引更改为主索引。然后我运行了/manage.py makemigrations(app_name)/manage.py迁移。我遇到了这个错误:(1091,“不能删除'id';检查列/键是否存在”)。似乎Django假设模型有一个id字段,而实际上没有,因为我可以使用phpMyAdmin创建一个id字段,当

我正在使用Django中现有的SQL数据库。由于某种原因,这些表从来没有被赋予主键,所以我只是浏览一下并给它们分配主键。在其中一个模型中,我使用
primary\u key=True
将现有的唯一索引更改为主索引。然后我运行了
/manage.py makemigrations(app_name)/manage.py迁移
。我遇到了这个错误:(1091,“不能删除'id';检查列/键是否存在”)。似乎Django假设模型有一个id字段,而实际上没有,因为我可以使用phpMyAdmin创建一个id字段,当我重新运行迁移时,它成功了。虽然我能够解决我的问题,但我怀疑这是解决问题的最佳方式。处理此问题的正确方法是什么?

您只能在迁移时使用--false选项删除“id”字段,因此,django认为它删除了id字段,而实际上它根本不存在。

您必须进行自定义迁移。@BurhanKhalid这是怎么做到的?编辑失败的迁移文件,删除删除删除不存在的
id
列的行…对我有用,谢谢
python manage.py migrate--false