#python #django #postgresql
#python #django #postgresql
Вопрос:
Это мой код
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.
Комментарии:
1. Вы правильно перенесли изменения в таблице
2. я следовал стандартной процедуре makegmigrations и migrate command, я делал это после каждого изменения, когда тестировал приложение во время его сборки.
3. Я попытался удалить эту модель и создать другую аналогичную модель, но тоже не могу этого сделать
4. Проблема не была исправлена, пришлось начинать мой проект заново, копировать-вставлять, и он работал. Возможно, миграция ошибочна.
5. Не могли бы вы опубликовать свое решение в качестве ответа и отметить как разрешенное @samar2170?
Ответ №1:
Проблема не была исправлена, пришлось начинать мой проект заново, копировать-вставлять, и он работал. Миграции перепутались.