django.db.utils.ProgrammingError: relation "django_content_type" already exists
23 августа 2016 г. 3:27
При переходе с версии Django 1.5.x на Django 1.7.x и версии выше могут возникнуть ошибки при миграции данных:
django.db.utils.ProgrammingError: relation "django_content_type" already exists django.db.utils.ProgrammingError: relation "auth_permission" already exists django.db.utils.ProgrammingError: relation "django_admin_log" already exists django.db.utils.ProgrammingError: relation "admin_tools_dashboard_preferences" already exists django.db.utils.ProgrammingError: relation "django_session" already exists django.db.utils.ProgrammingError: relation "django_site" already exists
Для решения проблемы нужно воспользоваться ключом --fake-initial при вызове команды migrate:
manage.py@project > migrate --fake-initial bash -cl "/path/to/project/env/bin/python /opt/pycharm-5.0.3/helpers/pycharm/django_manage.py migrate --fake-initial /path/to/project" Operations to perform: Synchronize unmigrated apps: staticfiles, sitemaps, admin_tools, messages Apply all migrations: sessions, admin, sites, auth, contenttypes, dashboard Synchronizing apps without migrations: Creating tables... Running deferred SQL... Installing custom SQL... Running migrations: Rendering model states... DONE Applying contenttypes.0001_initial... FAKED Applying auth.0001_initial... FAKED Applying admin.0001_initial... FAKED Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying dashboard.0001_initial... FAKED Applying sessions.0001_initial... FAKED Applying sites.0001_initial... FAKED Process finished with exit code 0
Можно видеть, что ключ --fake-initial фейково применяет первые миграции (0001_initial) приложений.
Ошибка возникает из-за добавления нативной системы миграций в Django. До версии Django 1.7 использовалось стороннее приложение south.
Похожие статьи:
Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.
Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.
Комментарии: 0