我必须为活动的 MySQL 数据库创建一个简单的 CRUD 面板。当我尝试迁移我的应用程序时,我收到以下错误:
AssertionError: A model can't have more than one Autofield
我在 The Django Book 第 18 章中阅读了以下内容:
每个生成的模型都有每个字段的属性,包括 id 主键字段。但是,请回想一下,如果模型没有主键,Django 会自动添加一个 id 主键字段。因此,您需要删除任何如下所示的行:
id = models.IntegerField(primary_key=True)
这些行不仅是多余的,而且如果您的应用程序将向这些表中添加新记录,它们也会导致问题。
我对这个领域有同样的情况:
id_call = models.BigIntegerField(primary_key=True)
但是,如果我遵循上述建议并删除此行,则使用此表的原始应用程序(不是 django 应用程序)可能无法正常工作,因为它可能使用此id_call
字段调用此表中的数据。
我该如何解决这种情况?