У меня есть несколько приложений django-cms 2.4.3 (django 1.5.5), работающих в процессе производства. Я в процессе обновления до django-cms 3.1.1 (Django 1.8/python2.7). Я могу запустить тестовую среду без проблем. Тем не менее, импорт моих существующих данных был проблемой. Я пробовал:Миграция Django-CMS 2.4.3 на Django-CMS 3.1.1
- 'python manage.py dumpdata> dump.json' на рабочем сервере.
- 'python manage.py loaddata -ignorenonexistent dump.json' на сервере разработки.
В результате серии таблиц уже существует, нарушает нулевой Ограничить, столбец не существует, и т.д ...
Затем я попробовал экспорт непосредственно из PostgreSQL (в качестве резервного) и восстановление в развитие установить. Запустите python manage.py migrate. Получите ряд дополнительных ошибок, похожих на выше. Прогон мигрирует с помощью migrate -fake-initial и -fake. Проблема в том, что многие страницы (в качестве примера сосредоточились на cms_page) изменили поля в 3.x с 2.4. Миграция будет рассматривать только изменения в миграции, разницу в таблице. Некоторые поля были добавлены, некоторые были удалены. Я просмотрел файл 0001 миграции cms_page. Он создает таблицу страниц с дополнительными столбцами. Миграция 0003 добавляет больше полей и некоторые капли. У этого списка нет конца.
Я потратил более трех дней, пытаясь перенести мои существующие данные. Я даже начал с django-cms 3.0, поместив некоторые плагины, автоматически обновил мою среду разработки до 3.1 (нет, я не включил pip install --upgrade). Просто разочарование.
Я даже начал вручную обновлять таблицы базы данных. Настольные ограничения делают это практически невозможным. Теперь я рассматриваю полностью переписывание миграции django-cms. Есть ли что-то, что я вижу, что облегчит миграцию данных? Может быть, остаться с django-cms 2.4 и обновить django до поддерживаемой версии?
Возможно, ваш шаг 2 выше. За последние два дня я работал с Django-CMS 3.0.15, а не 3.1. Я получил немного дальше, но мне все равно не повезло. Я работаю из копии и копии копии (как для django, так и для базы данных, поэтому у меня есть база для работы, когда мне нужно начинать заново). Я вернусь и начну с вашего гида. Я отправлю сообщение, как только узнаю больше. Спасибо за помощь. –
Думаю, я даже сделаю еще один шаг назад и попытаюсь получить Django-CMS 2.4.3 для работы с Django 1.7. Запуск Python 2.7 уже. –
База данных и южные миграции были синхронизированы. Наконец, получил копию Django-CMS 2.4/Django 1.5.5. Вместо использования базы данных восстановления postgresql я использовал dumpdata/loaddata из django. Мало ошибок. Должны были TRENDCATE CASCADE 'django-content-types. Django-form-designer выдавал ошибку во время миграции 0008. Удалил строку (строка # 34) в файл миграции: db.delete_column ('form_designer_formlog', 'data'), как описано в https://github.com/samluescher/Джанго-форм-дизайнер/вопросы/51. Рядом с работой по обновлению до django 1.6. –