【发布时间】:2021-01-14 17:16:43
【问题描述】:
这是我的代码
class BsValuesTTM(models.Model):
corpname = models.CharField(max_length=100)
co_name = models.CharField(max_length=100, primary_key=True)
ACR = models.FloatField()
Inventory = models.FloatField(null=True)
CashCE = models.FloatField(null=True)
CurrentAssets = models.FloatField()
GrossPPE = models.FloatField()
AccDepn = models.FloatField(null=True)
NetPPE = models.FloatField()
Intangibles = models.FloatField(null=True)
NCA = models.FloatField()
Assets = models.FloatField()
我的模型中只有一个主键,Django 抛出此错误
django.db.utils.ProgrammingError: multiple primary keys for table "Main_bsvaluesttm" are not allowed
我已经更改了主键的字段,之前它是 corpname,并且该字段曾经是外键。 我正在将 Postgresql12 与 Django 一起使用。
【问题讨论】:
-
您是否正确迁移了表更改
-
我遵循 makegmigrations 和 migrate 命令的标准程序,每次更改后我都这样做,因为我在构建它时测试应用程序。
-
我已经尝试删除这个模型并制作另一个类似的模型,也不能这样做
-
问题没有解决,不得不重新开始我的项目,复制粘贴,它工作。也许迁移搞砸了。
-
您能否发布您的解决方案作为答案,并标记为已解决@samar2170?
标签: python django postgresql