Юг django: модели отображаются как несинхронизированные, даже если они есть (или должны быть)
Я получаю это после syncdb:
clime@den /var/www/loserti $ ./manage.py syncdb
Syncing...
Creating tables ...
Creating table tagging_tag
Creating table tagging_taggeditem
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
Synced:
> django.contrib.auth
> django.contrib.contenttypes
> django.contrib.sessions
> django.contrib.sites
> django.contrib.messages
> django.contrib.staticfiles
> django.contrib.admin
> django.contrib.admindocs
> django.contrib.flatpages
> debug_toolbar
> filebrowser
> grappelli
> tagging
> south
Not synced (use migrations):
- photologue
- web
(use ./manage.py migrate to migrate these)
Итак, я запускаю миграцию:
clime@den /var/www/loserti $ ./manage.py migrate
Running migrations for photologue:
- Nothing to migrate.
- Loading initial data for photologue.
Installed 0 object(s) from 0 fixture(s)
Running migrations for web:
- Nothing to migrate.
- Loading initial data for web.
Installed 0 object(s) from 0 fixture(s)
Но результат syncdb все тот же:
clime@den /var/www/loserti $ ./manage.py syncdb
Syncing...
Creating tables ...
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
Synced:
> django.contrib.auth
> django.contrib.contenttypes
> django.contrib.sessions
> django.contrib.sites
> django.contrib.messages
> django.contrib.staticfiles
> django.contrib.admin
> django.contrib.admindocs
> django.contrib.flatpages
> debug_toolbar
> filebrowser
> grappelli
> tagging
> south
Not synced (use migrations):
- photologue
- web
(use ./manage.py migrate to migrate these)
Как это возможно и как это исправить?
РЕДАКТИРОВАТЬ: Вот слабая идея. Может быть, в какой-то момент я использовал./manage.py syncdb для создания новых таблиц для этих приложений, и я должен был вместо этого использовать миграции?
1 ответ
Решение
Это всего лишь предупреждение, потому что эти таблицы управляются югом и игнорируются в syncdb.
Одним из решений было бы преобразовать все ваши таблицы на юг и всегда запускать миграцию вместо syncdb. Я предполагаю, что вы можете каким-то образом отредактировать manage.py, чтобы запустить миграцию, а не возвращать сообщение.
Если вы больше не используете юг для этих приложений, удалите каталог миграций в приложении.