Тогда таблица, которую пытается создать django south, уже существует и не соответствует состоянию вашей базы данных.
Если вы выполняете миграцию впервые, помните, что прежде чем вносить изменения в схемы, вы должны установить начальное состояние с помощью schemamigration myapp --initial
и migrate app --fake
, чтобы база данных соответствовала южному состоянию базы данных.
manage.py convert_to_south myapp
также делает вышеперечисленное в качестве удобного метода.
Чтобы начать использовать юг ...
- Убедитесь, что ваши таблицы django точно соответствуют вашим текущим таблицам базы данных - если вы планируете добавлять или удалять столбцы, закомментируйте их.
- Запустить python manage.py schemamigration myapp --initial
- Запустите python manage.py migrate myapp --fake
- Внесите изменения в модель django
- Запустите python manage.py schemamigration myapp --auto
- Запустите python manage.py migrate myapp
Обновление
Примечание: корабли django 1.7+ с миграциями и югом больше не используются.
Стоит отметить только две команды ..
- manage.py makemigrations (handles --initial)
- manage.py migrate
Написано тем же автором, что и Юг, финансируется толпой. Иди джанго.