Почему Django отображает миграции, когда их нет?

Я пытаюсь сбросить свои миграции и начать с чистого листа, но у меня возникает очень странная проблема, которую я никак не могу решить. Для начала я удалил папку Migrations и удалил все таблицы в используемой базе данных (для контекста это база данных MySQL, и я использую MySQL Workbench для доступа к ней). Теперь после этого я выполнил команду python manage.py showmigrations, и она продолжает показывать мне все старые миграции, хотя их не должно быть.

Вот что я пытался сделать, чтобы решить эту проблему:

  • Я пытался перезапустить сервер несколько раз при каждом изменении или действии
  • .
  • Я удалил и создал базу данных снова с тем же именем
  • Я удалил и создал базу данных снова с другим именем
  • Я создал пустую папку Migrations в надежде, что, возможно, она заполнит папку файлами, но этого не произошло, и теперь у меня пустая папка Migrations и по-прежнему пустая база данных без таблиц
  • .
  • Я удалил все __pycache__ папки, которые смог найти
  • .

Я знаю, что это не связано с базой данных, потому что я заново создал базу данных с другим именем, как уже упоминалось. Я знаю, что есть что-то, что сохраняет все эти данные, несмотря на то, что папка Migrations пуста, а база данных пуста и в ней нет таблиц. Как мне это исправить?

Я нашел решение этой проблемы, воссоздав следующие шаги:

  1. Удалите папку migrations
  2. запустите python manage.py makemigrations --empty <app_name>

Когда я сделал это, а затем снова запустил команду makemigrations, она обнаружила все мои изменения и успешно выполнила миграцию после запуска python manage.py migrate.

Вернуться на верх