Добавление проекта South to Django, разработка и производство

Добавление юга к существующему проекту Django. Я установил его как на машину разработки, так и на "производственный" сервер.

Я сделал следующее на машине разработки, затем добавил южное приложение к settings.py,

python manage.py syncdb
python manage.py convert_to_south myproject.myapp

затем изменили некоторые модели, затем

python manage.py schemamigration myproject.myapp --auto
python manage.py migrate myproject.myapp

Кажется, работает до сих пор. То, что я сейчас не так уверен, - это то, что нужно делать на производственном сервере. Просто повторите все эти шаги вручную? Загрузите измененные settings.py, выполните syncdb, convert_to_south, загрузите измененные models.py, выполните схему, перенесите? Что-то другое? В учебнике здесь говорится о добавлении миграции в элемент управления версиями, поэтому, предположительно, они должны быть загружены и каким-то образом применены на производственном сервере?

Кроме того, прямо сейчас я использую sqlite3 на машине разработки и mysql на сервере - делает ли это что-то другое по-южнее?

Ответы

Ответ 1

В моем путеводителе говорится:

  • Установите Юг на сервер. import south из оболочки, чтобы убедиться, что вы используете один и тот же python env.
  • Добавьте 'south' в INSTALLED_APPS в settings.py.
  • Загрузить settings.py.
  • Перезапустить сервер
  • python manage.py syncdb.
  • Загрузите новый app/models.py и app/migrations/ dir.
  • Перезапустить сервер.
  • python manage.py migrate app --fake 0001
  • python manage.py migrate app

Ответ 2

Чтобы убедиться, что таблица миграции юга существует,

python manage.py syncdb

а затем

python manage.py migrate myproject.myapp --fake 0001
python manage.py migrate myproject.myapp

Что сработало для меня.:)

Ответ 3

Не нужно делать это в Django >= 1.7
я застрял на этом более 1 часа:)
и, наконец, найти 1,7 и более при модернизации сборки-с-юга

для получения дополнительной информации https://docs.djangoproject.com/en/1.7/topics/migrations/#upgrading-from-south
может быть, это поможет вам