2015-10-08 10 views
2

Итак, я немного изменил то, что является первичным ключом в моих моделях, а django это не понравилось. Я кое-что прочитал о том, почему и придумал сложное решение, которое включало создание промежуточных таблиц, а затем вывод всех данных в окончательную версию с новым первичным ключом.Django не создает таблицы в Postgres db

Я подумал: "Эй, я просто тест нежелательных данных в любом случае, плохо только падением таблиц, которые я хочу изменить, удалить всю историю миграции, а затем повторно перенести их на ...

Ну Я попробовал и теперь Django работает начальную миграцию и положить его в папку миграции, но когда я на самом деле запустить

python manage.py migrate 

я получаю этот выход:

Operations to perform: 
    Synchronize unmigrated apps: staticfiles, messages 
    Apply all migrations: sessions, admin, study, auth, quiz, contenttypes, main 
Synchronizing apps without migrations: 
    Creating tables... 
    Running deferred SQL... 
    Installing custom SQL... 
Running migrations: 
    No migrations to apply. 

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

+0

Есть ли в базе данных таблицы? Когда django мигрирует, он создает некоторые таблицы поддержки, которые не являются частью вашего приложения. Если они все еще вокруг, они могут запутать структуру. – eykanal

+0

Как насчет 'python manage.py makemigrations', а затем' python manage.py migrate'? – nehemiah

+0

Попробуйте выполнить миграцию для определенного приложения: python manage.py migrate quiz – Semprini

ответ

2

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

Смежные вопросы