Django неизвестная ошибка столбца при попытке получить объекты модели - PullRequest
0 голосов
/ 17 октября 2019

Я пытаюсь настроить веб-приложение, которое модифицирует существующую базу данных MySQL, используя Dajngo, модель для моей таблицы была сгенерирована с помощью Django inspectdb:

class BaseCase(models.Model):
    base_case_name = models.TextField(blank=True, null=True)
    version = models.TextField(blank=True, null=True)
    default = models.TextField(blank=True, null=True)  # This field type is a guess.
    class Meta:
        managed = False
        db_table = 'base_case'

, и вот SQLэта таблица base_case в базе данных:

CREATE TABLE `base_case` (
  `base_case_name` tinytext,
  `version` tinytext,
  `default` bit(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

проблема в том, что когда я пытаюсь получить объекты через Django ORM, я получаю эту ошибку

django.db.utils.OperationalError: (1054, "Unknown column 'base_case.id' in 'field list'")

Ответы [ 2 ]

1 голос
/ 17 октября 2019
$ python manage.py makemigrations

$ python manage.py migrate

выполните следующую команду для внесения изменений в базу данных.

0 голосов
/ 18 октября 2019

Я решил проблему с помощью , определив первичный ключ в BaseCase Table , Django пытается сопоставить столбец первичного ключа с его собственным сгенерированным идентификатором (base_case.id) в полесписок.

...